场景介绍
1.当用户点击“开启订阅消息”时弹出如下授权框
注:此图来源于网络图片,如侵权,请告知删除
图片来自https://www.jianshu.com/p/085...
2.当用户点击“总是保持以上选择,不在询问”,再次点击“开启订阅消息”时,跳转到小程序设置页。如下图
注意事项:
1.开发者工具必须是最新的
2.基础库在 2.10.0 以上
3.用户需要点击“总是保持以上,不再询问”,才可以获取到getSetting返回的用户授权信息
// 开启订阅消息
openMsg() {
var that = this
// 获取用户的当前设置,判断是否点击了“总是保持以上,不在询问”
wx.getSetting({
withSubscriptions:true, //是否获取用户订阅消息的订阅状态,默认false不返回
success(res) {
if(res.authSetting['scope.subscribeMessage']) { //用户点击了“总是保持以上,不再询问”
uni.openSetting({ // 打开设置页
success(res) {
console.log(res.authSetting)
}
});
}else { // 用户没有点击“总是保持以上,不再询问”则每次都会调起订阅消息
var templateid = that.setting.templateid.map(item => item.tempid)
uni.requestSubscribeMessage({
tmplIds: templateid,
success (res) {
console.log(res)
},
fail:(res) => {
console.log(res)
}
})
}
}
})
},
坑很多,也是借鉴了很多网友的思路
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。