问题描述:
vue + electron 做了一款应用,触发条件会弹出通知。在开发过程中发现通知有点频繁,就点击三个点关闭了所有的通知,以为关闭应用再打开还会有通知,发现没有。
尝试解决:
系统>通知:找不到应用
打开调试:发现 Notification.permission 是 granted
把应用安装到别的目录
修改应用的名称
上述方法都不能解决
解决方法:
最后找到了可行方案:删除注册表Notification里面的Enabled0和将数据库s:toast改成1
一、删除注册表中Notifications Enabled的值
按下Windows徽标键+R,输入regedit
打开注册表编辑器,找到这个目录
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Notifications\Settings\
在目录中找到你的应用点开(我这里electron.app.App),右侧会出现一个叫做Enabled的条目,最右边显示的值是0,代表不显示通知。我试了改成1不行,我看了别的条目是没有Enabled的,删除后发现有效,右键删除这个名为Enabled的条目,其他的不用管。
二:将数据库s:toast改成1
需要SQL工具来查看和修改.md文件,如果系统中没有,可以使用SQLiteSpy_1.9.16,这是个绿色软件,
蓝奏云下载
https://wwzs.lanzouc.com/iTHfK15qe06d
密码:x089
下载好解压打开,打开数据库,路径:C:\Users\(你的用户名)\AppData(看不到的话勾上显示隐藏文件)\Local\Microsoft\Windows\Notifications\wpndatabase.db
打开后双击NotificationHandler,找到自己的应用,记住第一列的ID
双击HandlerSettings,点击列头可以排序,根据ID找到s:toast,可以看到这里的值是0
输入SQL语句
UPDATE HandlerSettings SET Value=1 WHERE HandlerId=331 AND SettingKey='s:toast'
执行SQL语句
执行完后,这里看到有一条更新
再双击HandlerSettings查看,这里改成了1
执行完如果不生效,可以执行这里
至此,修改完成,可以看到通知了