问题描述
在做小程序订阅消息开发的过程中发现,如果是长期订阅消息的类型,一旦用户授权后,后面就不会再弹出申请改订阅消息的授权弹窗,这对于开发过程中是很不方便的
发现如果是在模拟器上调试,是可以通过清除模拟器缓存->清除授权数据来清除已授权的数据

但是模拟器上调用wx.requestSubscribeMessage申请授权和在真机上差异很大,在模拟器上每次调用都会弹窗,不像在真机上授权后就不再弹窗,而且模拟器上一次只能显示一种消息的授权,即使代码中设置申请了多种订阅消息,为了测试用户真实的环境还是得用真机测试
但是如果是真机上调试,依然找不到清除已授权数据的方式,试了把小程序删除再重新预览也不行,通过微信设置里面的清除小程序缓存也不行
解决方法
惊不惊喜,意不意外,绕了一大圈,结果和在模拟器上的清除方法一样,只要模拟器上和真机上用的是同一个账号,这说明消息订阅的授权数据是存在后端而不是存在本地的,所以即使删除小程序这些授权配置还依然存在。
但是微信开发者工具这菜单名字确实容易误导人,会让人以为只是清除模拟器的缓存
