小程序用户授权笔记整理

一、用户授权
在这里插入图片描述需要分三个情况来处理。

**第一步:获取用户授权设置。**

调用一下 wx.getSetting 获取用户当前的授权,在这里我们获取一下微信运动的授权。

1)首先创建函数,用于读取为用户的微信运动数据。
2)先获取用户对当前小程序的授权状态。
3)提醒用户授权:1.成功以后也就是允许的状态,我们读取用户的微信运动数据,2.假设用户拒绝了授权:应该提示用户必须授权才能获取微信运动数据,并提示如何开启授权。

代码如下:

// miniprogram/pages/walking/walking.js
Page({

  /**
   * 页面的初始数据
   */
  data: {

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.getUserRun()
  },
  //创建函数,用于读取为用户的微信运动数据
  getUserRun(){
    let self=this
    //先获取用户对当前小程序的授权状态
    wx.getSetting({
      success(res){
        console.log(res)
        if(!res.authSetting['scope.werun']){
          //提醒用户授权
          wx.authorize({
            scope: 'scope.werun',//scope.werun微信运动步数
            success(){
              //读取用户的微信运动数据
              self.getWeRunData()
            },
            fail(){
              //如果用户禁止授权,应该提示用户必须授权才能获取微信运动数据,并提示如何开启授权
              wx.showModal({
               title:'读取微信运动失败',
               content:'请在小程序右上角[设置]中开启授权'
              })
            }
          })
        }else{
          // 直接读取用户的微信运动数据
          self.getWeRunData()
        }
      }
    })
  },
  //读取用户的微信运动数据
  getWeRunData(){
    wx.getWeRunData({
      success (res){
        console.log(res)
        //调用云函数,将加密的数据进行解密
        wx.cloud.callFunction({
          name:'deswerundata',
          data:{
            weRunData:wx.cloud.CloudID(res.cloudID) //这个cloudID值到云函数端会被替换
          }
        }).then(res=>{
          console.log(res)
        })
      }
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})

页面展示状态:
在这里插入图片描述
点击允许,就获取了这个微信运动的权限,我们允许了必须先清除状态,重新编译。即可重新获取
在这里插入图片描述
先清后译
在这里插入图片描述

拒绝以后:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这样也可以允许微信运动权限。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值