Auth 模块
android.auth 用于查询和触发授权,是排查 SDK 调用失败时最先应该看的模块之一。
使用原则
- 传
false:只检查当前权限状态 - 传
true:尝试拉起授权流程 - 建议先检查,再决定是否授权
常用方法
openAccessibilityService(open)
检查或申请无障碍权限。
- 参数:
open: boolean - 返回值:
Promise<boolean> - 影响范围:
android.acc模块的大部分能力依赖它
const enabled = await android.auth.openAccessibilityService(false)openSysSetting(open)
检查或申请系统设置权限。
- 参数:
open: boolean - 返回值:
Promise<boolean>
openPower(open)
检查或申请省电优化白名单相关能力。
- 参数:
open: boolean - 返回值:
Promise<boolean>
openFloatWindow(open)
检查或申请悬浮窗权限。
- 参数:
open: boolean - 返回值:
Promise<boolean>
openMustPermissions(open)
检查或申请 SDK 运行必须依赖的权限集合。
- 参数:
open: boolean - 返回值:
Promise<boolean>
openAllFile(open)
检查或申请文件读写相关权限。
- 参数:
open: boolean - 返回值:
Promise<boolean> - 适用场景:文件、截图、图片处理、日志输出等
openScreenCap(open)
检查或申请录屏 / 截图权限。
- 参数:
open: boolean - 返回值:
Promise<boolean> - 适用场景:截图、OCR、视频流
推荐检查顺序
const summary = {
must: await android.auth.openMustPermissions(false),
acc: await android.auth.openAccessibilityService(false),
file: await android.auth.openAllFile(false),
float: await android.auth.openFloatWindow(false),
screen: await android.auth.openScreenCap(false),
}注意事项
- 无障碍开启后,应用或连接状态可能发生变化
- 录屏权限未开启时,截图、OCR、视频流往往都会失败
- 文件权限缺失时,不要直接判断为 SDK Bug
- 建议把权限检查结果打印在启动日志里,便于定位问题
