tt.authorize
收藏我的收藏
基础库 1.3.0 开始支持本方法,这是一个异步方法。
提前向用户发出用户授权请求。该方法不会调用对应接口,只会弹框咨询用户是否授权或者获取用户信息。如果用户之前有授权,该接口直接返回成功,不会跟用户产生交互。
前提条件 | 无 |
业务背景 | 无 |
使用限制 | 无 |
注意事项 | 获取用户信息授权(scope.userInfo)前需要先调用 tt.login,否则会出现"authroize:fail invalid session"报错 |
相关教程 | 无 |
语法
tt.authorize(options)
参数说明
options 为 object 类型,属性如下:
属性名 | 类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
---|---|---|---|---|---|
scope | string | 是 | 需要预授权的 scope,详见 用户授权 scope 说明 | 1.3.0 | |
success | function | 否 | 接口调用成功的回调函数 | 1.3.0 | |
fail | function | 否 | 接口调用失败的回调函数 | 1.3.0 | |
complete | function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) | 1.3.0 |
回调成功
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
data | object | 授权结果 | 1.3.0 |
errMsg | string | "authorize:ok" | 1.3.0 |
data 参数说明
data 是申请的授权结果,其中 key 为入参的 scope,value 为授权结果,如:
data: { "scope.userInfo": "ok" }
data 类型说明
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
scope.userInfo | string | 是否授权用户信息 | 1.3.0 |
scope.userLocation | string | 是否授权地理位置 | 1.3.0 |
scope.record | string | 是否授权麦克风功能 | 1.3.0 |
scope.album | string | 是否授权保存到相册 | 1.3.0 |
scope.camera | string | 是否授权摄像头 | 1.3.0 |
scope.screenRecord | string | 是否授权录屏,默认为开。在 onError 里面报错到没有录屏权限时,可以尝试主动调用 | 1.3.0 |
scope.calendar | string | 是否授权向系统日历添加事件 | 1.3.0 |
回调失败
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
errMsg | string | "authorize:fail " + 详细错误信息 | 1.3.0 |
错误码
errNo | errMsg | 说明 | 最低支持版本 |
---|---|---|---|
21105 | /s | %s 代表占位符。 | 1.3.0 |
21102 | auth deny | 1.3.0 | |
10401 | internal auth error | 小游戏框架内部错误,有需要请创建工单咨询 | 1.3.0 |
21101 | invalid scope | 1.3.0 | |
21103 | batched auth permission deny | 1.3.0 | |
21104 | %s not support batched auth | 1.3.0 | |
20001 | invalid param | 参数错误 | 1.3.0 |
20000 | internal error | 小游戏框架内部错误,有需要请创建工单咨询 | 1.3.0 |
20000 | Scope is NULL. | 1.3.0 | |
10401 | Internal error: platform auth deny | 小游戏框架内部错误,有需要请创建工单咨询 | 1.3.0 |
21106 | not login | 1.3.0 |
扫码体验
请使用字节宿主APP扫码
代码示例
tt.authorize({ scope: "scope.userInfo", success() { // 用户同意授权用户信息 }, });