codecamp

QQ小游戏 授权

授权

部分接口需要经过用户授权同意才能调用。我们把这些接口按使用范围分成多个 scope ,用户选择对 scope 来进行授权,当授权给一个 scope 之后,其对应的所有接口都可以直接使用。 部分接口需要获得用户授权同意后才能调用。此类接口调用时:

  • 如果用户未接受或拒绝过此权限,会弹窗询问用户,用户点击同意后方可调用接口;
  • 如果用户已授权,可以直接调用接口;
  • 如果用户已拒绝授权,则不会出现弹窗,而是直接进入接口 fail 回调。请开发者兼容用户拒绝授权的场景。

获取用户授权设置

开发者可以使用 qq.getSetting 获取用户当前的授权状态。

打开设置界面

用户可以在小程序设置界面(「右上角」 - 「关于」 - 「右上角」 - 「设置」)中控制对该小程序的授权状态。 开发者可以调用 qq.openSetting 打开设置界面,引导用户开启授权。

提前发起授权请求

开发者可以使用 qq.authorize 在调用需授权 API 之前,提前向用户发起授权请求。

scope 列表

scope 对应接口 描述
cope.userInfo qq.getUserInfo 用户信息
scope.userLocation qq.getLocation 地理位置
scope.qqrun qq.getQQRunData QQ运动步数
scope.writePhotosAlbum qq.saveImageToPhotosAlbum 保存到相册
setting.appMsgSubscribed qq.subscribeAppMsg 订阅消息(833以下版本使用scope.appMsgSubscribed,833及以上版本使用setting.appMsgSubscribed)
setting.addFriend 主动调用qq.authorize接口进行授权 允许被添加好友

注意事项

  1. qq.authorize({scope: "scope.userInfo"}),不会弹出授权窗口,请使用 qq.createUserInfoButton
  2. 需要授权 scope.userLocation 时必须配置地理位置用途说明。
QQ小游戏 用户登录态签名
QQ小游戏 关系链数据指南
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

QQ小程序 开发

硬件能力

QQ小程序 云开发

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }