终端不该动不动就来打扰你。Term 申请通知权限只为两件事,另外帮你转达第三种 —— 这一页把它们列全,你看一遍就能一次决定好。
撰写于
单个上传或下载到了 200 MB 以上,才会有一条带实时进度的通知。之所以要它,是因为你一切走,HarmonyOS 就会把应用挂起:这么大的传输得申请一个数据传输任务才能继续跑,而你人不在的时候,这条通知是唯一还能告诉你传到哪儿了的地方。传完它自己收尾、自己消失。比这小的传输一概不发 —— 网络正常的话,你还没切走它就已经传完了。
我们回复你提交的反馈时会发一条通知,点一下直接进那条反馈。这需要你已经登录 —— 回复得挂在账号上,才能在你换了设备之后照样找到你。
你在远端跑的程序如果自己发了通知请求 —— 也就是 OSC 9 这个转义序列,比如 printf '\033]9;编译完成\007' —— Term 会把它转交给系统。只有这一种情况,文字不是我们写的:是你启动的程序要求的,Term 只负责传话。反过来说,不是你自己跑起来的东西,服务器上什么都做不到。
没有营销,没有版本更新推送,没有「你好久没打开 Term 了」,也没有每日汇总。整个应用里只有一处代码能发系统通知,上面这三种就是它发的全部。
Term 不会莫名其妙弹出系统授权框。你点下载,什么框都不会弹。你看到的是一条小横幅:大文件传输时它在「传输」面板里,写着「显示传输进度?」;回复通知那条在你的反馈列表上方,写着「回复到了想第一时间知道吗?」。横幅上有一个开启按钮和一个 ✕,只有你自己点了开启,系统弹窗才会出现。
每条横幅最多只出现一次。你把它 ✕ 掉,它就不会再来:不会换个时机再问,也不会过几天提醒你一次。传输该跑还是照跑 —— 通知管的只是「要不要告诉你」,不是「这件事做不做」。
这是你按下之前最该知道的一点。HarmonyOS 上的通知授权弹窗,一次安装只能弹一次。一旦你拒绝过,负责弹它的那个系统能力就彻底失效了 —— 应用再去调,屏幕上一点反应都没有。这是系统写进文档的规矩,设备上所有应用一视同仁,不是 Term 换个说法多问一遍就能绕开的。
所以被拒绝之后,那个开启按钮做的是另一件事:它会直接把你送到 Term 的系统通知设置页,你在那儿手动打开。也就是说并不是就没救了 —— 只是一步到位的那条路没了,剩下的得进设置绕一趟。
建议就这一句:横幅出现的时候,只要你觉得自己以后可能想让一个 2 GB 的下载切到后台还接着跑,就点开启。点一下的事,只用在上面那三件事上,而且以后想关掉,比现在拒了再想开容易太多。
Term 自己没有通知开关 —— 系统的通知设置就是唯一的开关。这是故意的:应用里再放一个,迟早会和系统里的真实状态对不上,到时候应用显示开着、其实一条也发不出来。要改就长按应用图标,或者进系统「设置 → 通知」里找到 Term。
还有一点:这个「拒绝」是跟着这次安装记住的,不是关一次应用就清掉 —— 退出 Term、更新 Term,都不会让弹窗再有一次机会。所以通知现在关着、你又想要,只能走上面那个设置页。