wx.getSetting: 获取用户的当前设置( res.authSetting[scope] 获取授权信息 )。wx.openSetting: 调起客户端小程序设置界面,返回用户设置的操作结果。wx.authorize: 提前向用户发起授权请求。调用后会立刻弹窗询问用户是否同意授权小程序使用某项功能或获取用户的某些数据,但不会实际调用对应接口。如果用户之前已经同意授权,则不会出现弹窗,直接返回成功。但在缓存生效期间只会弹窗一次。wx.showModal: 检测到未授权时弹窗提示用户。wx.chooseAddress && wx.chooseInvoiceTitle: 调起响应的用户授权。
使用 ``
app.js
App({ /** * 当小程序初始化完成时,会触发 onLaunch(全局只触发一次) */ onLaunch: function () { console.log("[ onLaunch"); this.userLogin(); console.log("]"); }, /** * 当小程序启动,或从后台进入前台显示,会触发 onShow */ onShow: function (options) { console.log("[ onShow"); console.log(options); console.log("]"); }, /** * 当小程序从前台进入后台,会触发 onHide */ onHide: function () { console.log("[ onHide"); console.log("]"); }, /** * 当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息 */ onError: function (msg) { console.log("[ onError"); console.log('onError'); console.log('msg'); console.log("]"); }, /** * 全局变量 */ globalData: {}, /** * 登陆 */ userLogin() { }, /** * 授权 * scope.userInfo wx.getUserInfo 用户信息 scope.userLocation wx.getLocation, wx.chooseLocation 地理位置 scope.address wx.chooseAddress 通讯地址 scope.invoiceTitle wx.chooseInvoiceTitle 发票抬头 scope.werun wx.getWeRunData 微信运动步数 scope.record wx.startRecord 录音功能 scope.writePhotosAlbum wx.saveImageToPhotosAlbum, wx.saveVideoToPhotosAlbum 保存到相册 scope.camera 摄像头 */ checkAuthorize(scope) { wx.getSetting({ success: (res) => { console.log(res.authSetting[scope]) if (!res.authSetting[scope]) { wx.showModal({ title: '用户未授权', content: '拒绝授权将不能体验小程序完整功能,点击确定开启授权', success: (res) => { console.log(res) if (res.confirm) { wx.openSetting({}) } } }) } } }) }})index.wxml
<!--pages/index.wxml--><button bindtap="testAddress">测试地址授权</button><button bindtap="TestWeRunData">测试发票抬头授权</button>index.js
const app = getApp();Page({ testAddress() { wx.chooseAddress({ success: (res) => { console.log(res) }, fail: (error) => { console.log(error); app.checkAuthorize('scope.address') } }) }, TestWeRunData() { wx.chooseInvoiceTitle({ success: (res) => { console.log(res) }, fail: (error) => { console.log(error); app.checkAuthorize('scope.address') } }) }})














