微信小程序> 小程序用户拒绝授权解决方法

小程序用户拒绝授权解决方法

浏览量:929 时间: 来源:Jason丶云

众所周知,小程序进入首先都要进行微信授权的,那万一用户不小心点了拒绝按钮怎么办呢?不要慌,官方早已预料到此情况,并提供了api供开发者使用,下面就一起来研究下api吧

一、API接口

wx.openSetting(OBJECT)调起客户端小程序设置界面,返回用户设置的操作结果。注:设置界面只会出现小程序已经向用户请求过的权限。wx.getSetting(OBJECT)获取用户的当前设置。注:返回值中只会出现小程序已经向用户请求过的权限。

二、API调用顺序

首先要知道咱们解决的问题是什么,其次才是怎么解决问题。

需要解决的问题:用户拒绝授权,在需要其授权的信息的页面打开授权,让用户再次进行授权(ps:表达能力有限)

分析问题:1.拒绝授权;2.再次授权

1:既然已拒绝授权,那么肯定已经调用了wx.getUserInfo()方法,那么先看下这个api吧

        wx.getUserInfo({            success: function (res) {//用户同意授权时返回的数据                var userInfo = res.userInfo                wx.setStroageSync('userInfo', userInfo)//获app.userInfo = userInfo                var nickName = userInfo.nickName                var avatarUrl = userInfo.avatarUrl                var gender = userInfo.gender //性别 0:未知、1:男、2:女                var province = userInfo.province                var city = userInfo.city                var country = userInfo.country            },            fail: function (ret) {//用户拒绝授权时的操作                //             }        })

2.再次授权

        // 在需要用户授权时调用wx.getSetting()        wx.getSetting({            success: function (res) {                if (res.authSetting["scope.userInfo"]) {//用户已授权                    wx.getUserInfo({                        success: function (data) {                            var scopeData = data.userInfo;                            wx.setStorageSync('userInfo', scopeData);                        }                    })                } else {//用户未授权                    // 可以添加个提示信息,在这里就我就不写了哈                    wx.openSetting({//打开小程序设置页面,用户自己选择授权                        success: function (res) {                            res.authSetting = {                                "scope.userInfo": true                            }                        }                    })                }            }        })       

3.注

 最后一点要注意,在小程序的设置页面,用户点击按钮是没有办法进行其操作的,要在其返回页面的onShow方法里进行wx.getSetting的success()操作

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎