目录
- 官方文档
- 小程序授权
- 获取用户授权设置
- 提前发起授权请求
- scope 列表
- 授权有效期
- 注意事项
- 后台定位
- 案例
官方文档
<https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/authorize.html>
https://developers.weixin.qq.com/miniprogram/dev/api/open-api/setting/wx.getSetting.html
小程序授权
1 因为部分功能需要用同意后才能使用。
2 wx.getSetting来判断该用户有没有对接口授权,我判断哪个接口,就必须给wx.getSetting传对应的scope值
- 一个scope值对应这个一个或多个接口
3 如果我们从wx.getSetting中发现scope值是false,标识没有授权,我们可以通过wx.authorize发起授权,对那个接口授权,就给wx.authorize传对应scope值就可以了。如果用用户同意授权,就可以直接使用对应的接口了。
4 但是scope.userInfo没有办法使用wx.authorize自动弹起弹框。必须要用户手动点击按钮唤起授权弹框。
代码格式:
<button open-type="getUserInfo" bindgetuserinfo="user1">用户信息</button>
我们可以再响应函数的参数中获取用户信息。e.detail,这个和直接调用wx.getUserInfo获取的内容一样。
获取用户授权设置
开发者可以使用 wx.getSetting 获取用户当前的授权状态。
提前发起授权请求
开发者可以使用 wx.authorize 在调用需授权 API 之前,提前向用户发起授权请求。
scope 列表
scope | 对应接口 | 描述 |
---|---|---|
scope.userInfo | wx.getUserInfo | 用户信息 |
scope.userLocation | wx.getLocation, wx.chooseLocation | 地理位置 |
scope.userLocationBackground | wx.startLocationUpdateBackground | 后台定位 |
scope.address | wx.chooseAddress | 通讯地址 |
scope.invoiceTitle | wx.chooseInvoiceTitle | 发票抬头 |
scope.invoice | wx.chooseInvoice | 获取发票 |
scope.werun | wx.getWeRunData | 微信运动步数 |
scope.record | wx.startRecord | 录音功能 |
scope.writePhotosAlbum | wx.saveImageToPhotosAlbum, wx.saveVideoToPhotosAlbum | 保存到相册 |
scope.camera | camera 组件 | 摄像头 |
授权有效期
一旦用户明确同意或拒绝过授权,其授权关系会记录在后台,直到用户主动删除小程序。
注意事项
wx.authorize({scope: "scope.userInfo"}) 用户信息 的授权必须button用户手动触发弹窗,授权
其他录音等授权,可以直接写在生命周期中,自动弹窗,用户点击授权
wx.authorize({scope: "scope.userInfo"})
,不会弹出授权窗口,请使用 ``open-type="getUserInfo"
<button bindgetuserinfo="user1" open-type="getUserInfo">个人信息1</button>
需要授权
scope.userLocation
、scope.userLocationBackground
时必须配置地理位置用途说明。
后台定位
与其它类型授权不同的是,scope.userLocationBackground 不会弹窗提醒用户。需要用户在设置页中,主动将“位置信息”选项设置为“使用小程序期间和离开小程序后”。开发者可以通过调用wx.openSetting,打开设置页。
案例
# wxml文件:
<button bindtap="lu">录音</button>
<button bindtap="user" open-type="getUserInfo">个人信息</button>
<button bindgetuserinfo="user1" open-type="getUserInfo">个人信息1</button>
# js文件:
lu:function(){
wx.getSetting({
success(res){
if (!res.authSetting['scope.record']) {
wx.authorize({
scope: 'scope.record', // 授权的功能
success() {
// 用户已经同意小程序使用录音功能,后续调用 wx.startRecord 接口不会弹窗询问
wx.startRecord() // 使用接口
}, fail() { // 用户不同意进入fail回调
console.log("你没有授权")
}
})
} else {
wx.startRecord() //使用接口
}
}
})
},
user: function () {
wx.getSetting({
success(res) {
if (!res.authSetting['scope.userInfo']) {
wx.authorize({
scope: 'scope.userinfo', // 授权的功能
success() {
console.log('进来了')
wx.startRecord() // 使用接口
}
})
} else {
console.log('已经授权了')
wx.startRecord() //使用接口
}
}
})
},
user1:function(e){
console.log('e',e.detail)
wx.getSetting({
success(res){
if (res.authSetting['scope.userInfo']){
wx.getUserInfo({
success:(res) => {
console.log('res',res)
}
})
}
}
})
},
,Usdt自动充值接口声明:该文看法仅代表作者自己,与本平台无关。转载请注明:大庆个人房屋出租:小程序的授权阳光在线www.lanbao-film.com(原诚信在线)现已开放阳光在线手机版下载。阳光在线游戏公平、公开、公正,用实力赢取信誉。
镇江新闻网是瑞安本地的一家大型综合便民论坛网站,拥有本地最高的人气。主要专注于本地服务和原创热点内容,城市生活向导、今日焦点、社区公告等新闻服务一应俱全,还有摄影和写作交流专区和各类线下活动招募,24小时提供最新的线上资讯更新和开放交流内容,让您轻松玩转本地,实现高质量交友。我也想写,求教
皇冠新现金网皇冠新现金网(www.huangguan.us)是一个开放皇冠即时比分、皇冠官网手机版下载、皇冠足球app下载、皇冠注册的皇冠官网平台。皇冠新现金网平台(www.huangguan.us)上登录线路最新、新2皇冠网址更新最快,皇冠体育APP开放皇冠会员注册、皇冠代理开户等业务。嘿嘿,一起讨论吗
我业余时刻喜好炒股。前段时刻有个自称是某证券助理,通过微信加我进群进行股票大课堂,我觉得听听无妨,‘就好奇的到场’了,这个大课堂一向由蒋老师和其它三位老师一起在讲课的。15~21:40全天讲投资股票,提供的股票至少在那时的行情中仍是对照坚挺,固然我也没赢利,单心里有点信任了他们。
后头老师介绍股票而今不是格外赢利,可以带大师炒股指期货,让我们股票亏损的股友尽快脱亏,他会带我们操纵。我是群里最晚入金的,〖看到〗这么多股友都入金了,我仍是不定心暗地里加‘了几位股友’询问,他们都开了账户(我是26「日」入金260000元),27「日」进行操纵,他群里喊空单操纵,还让我们加仓至3层仓位,说会下来的,短短25分钟我爆仓了。账户剩下10{来万},接着在27「日」晚上我又入金5{万元},之后我要去外地出差加入培训3天,