uniapp 微信小程序订阅(一次性订阅消息)

    一次调用最多可订阅3条消息 小程序弹出后,可点击的情况 1、单纯点击取消/确认键 2、勾选了总是保持以上选择 3、勾选了拒绝,不再询问 一次性订阅发送之后,就无效的了,需要再次让用户重新点击同意
uni.requestSubscribeMessage({
          
   
      tmplIds: ids,
      success(res) {
          
   
     	 //消息订阅调起成功,返回值accept、reject、ban分别代表用户对此条订阅是同意、拒绝、后台禁用
      },
      fail(err) {
          
   
      	 //消息订阅调起失败
      },
      complete() {
          
   
        // 无论确定还是取消,只要点击按钮后都会执行
      },
    })
uni.getSetting({
          
   
      withSubscriptions: true,
      success(alwaysRes) {
          
   
        if (!alwaysRes.subscriptionsSetting.mainSwitch) {
          
   
        	//后台封禁了
        	//引导用户打开权限
        	uni.showModal({
          
   
      		  title: 是否重新授权消息订阅功能,
      		  success(res) {
          
   
        	    if (res.confirm) {
          
   
          		  uni.openSetting({
          
   
                    success(res) {
          
   
                      if (res.subscriptionsSetting) {
          
   
                        Toast(开启权限成功)
                      }
                    },
                   fail() {
          
   
                     Toast(开启权限失败)
                   },
                 })
                } else if (res.cancel) {
          
   
                  Toast(拒绝开启开启权限)
                }
             },
          })
        } else {
          
   
        	//后台未封禁
        	//alwaysRes.subscriptionsSetting.itemSettings != null 是检测订阅消息中是否有始终保持不再通知的选项
        }
      },
    })
经验分享 程序员 微信小程序 职场和发展