uni-app 开发微信小程序接入订阅消息

场景介绍

uni-app 开发微信小程序接入订阅消息_第1张图片

1.当用户点击“开启订阅消息”时弹出如下授权框

uni-app 开发微信小程序接入订阅消息_第2张图片
注:此图来源于网络图片,如侵权,请告知删除
图片来自https://www.jianshu.com/p/085...

2.当用户点击“总是保持以上选择,不在询问”,再次点击“开启订阅消息”时,跳转到小程序设置页。如下图
uni-app 开发微信小程序接入订阅消息_第3张图片

注意事项:
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)
               }
             }) 
          }
       }
    })
},

坑很多,也是借鉴了很多网友的思路

你可能感兴趣的