# wx.getAppAuthorizeSetting

  • 获取 App 授权设置。即开发者可以通过该接口判断用户已将哪些权限授权给 App 了。
  • 注意: Android 和 iOS 是有些区别的,not determined 值只有 iOS 会返回,Android 是没有的。
  • 'not determined' 表示尚未请求授权,会在 App 下一次调用系统相应权限时请求

# 返回值

# Android

属性 返回值 说明 Android 原生权限
cameraAuthorized 'authorized'/'denied' 允许 App 使用摄像头的权限开关 CAMERA
locationAuthorized 'authorized'/'denied' 允许 App 使用定位的权限开关 ACCESS_FINE_LOCATION
microphoneAuthorized 'authorized'/'denied' 允许 App 使用麦克风的权限开关 RECORD_AUDIO
notificationAuthorized 'authorized'/'denied' 允许 App 通知的权限开关 /
phoneCalendarAuthorized 'authorized' 允许 App 读写日历的权限开关 添加日历当前不涉及系统授权,所以统一返回 'authorized'
mediaAudioAuthorized 'authorized'/'denied' 允许 App 读取音频文件的权限开关 READ_MEDIA_VIDEO
targetsdkversion 33 以下 读的是 READ_EXTERNAL_STORAGE
mediaImagesAuthorized 'authorized'/'denied' 允许 App 读取图像文件的权限开关 READ_MEDIA_VIDEO
targetsdkversion 33 以下 读的是 READ_EXTERNAL_STORAGE
mediaVideoAuthorized 'authorized'/'denied' 允许 App 读取视频文件的权限开关 READ_MEDIA_VIDEO
targetsdkversion 33 以下 读的是 READ_EXTERNAL_STORAGE
albumAuthorized 'undefined' 仅 iOS 有效,所以返回 'undefined', Android 端可忽略 /
albumAddOnlyAuthorized 'undefined' 仅 iOS 有效,所以返回 'undefined', Android 端可忽略 /
bluetoothAuthorized 'undefined' 仅 iOS 有效,所以返回 'undefined', Android 端可忽略 /
locationReducedAccuracy 'undefined' 仅 iOS 有效,所以返回 'undefined', Android 端可忽略 /
notificationAlertAuthorized 'undefined' 仅 iOS 有效,所以返回 'undefined', Android 端可忽略 /
notificationBadgeAuthorized 'undefined' 仅 iOS 有效,所以返回 'undefined', Android 端可忽略 /
notificationSoundAuthorized 'undefined' 仅 iOS 有效,所以返回 'undefined', Android 端可忽略 /
  • 使用到上述提及的权限,开发者需在开发者工具 - project.miniapp.json 中配置权限用途,才会出现授权申请的弹窗。

# iOS

属性 返回值 说明
albumAuthorized 'authorized'/'denied'/'not determined' 允许 App 使用相册的权限开关
albumAddOnlyAuthorized 'authorized'/'denied'/'not determined' 允许 App 只读相册的权限开关
bluetoothAuthorized 'authorized'/'denied'/'not determined' 允许 App 使用蓝牙的权限开关
cameraAuthorized 'authorized'/'denied'/'not determined' 允许 App 使用摄像头的权限开关
locationAuthorized 'authorized'/'denied'/'not determined' 允许 App 使用定位的权限开关
locationReducedAccuracy boolean 定位准确度。true 表示模糊定位,false 表示精确定位
microphoneAuthorized 'authorized'/'denied'/'not determined' 允许 App 使用麦克风的权限开关
notificationAuthorized 'authorized'/'denied'/'not determined' 允许 App 通知的权限开关
notificationAlertAuthorized 'authorized'/'denied'/'not determined' 允许 App 通知带有提醒的权限开关
notificationBadgeAuthorized 'authorized'/'denied'/'not determined' 允许 App 通知带有标记的权限开关
notificationSoundAuthorized 'authorized'/'denied'/'not determined' 允许 App 通知带有声音的权限开关
phoneCalendarAuthorized 'authorized'/'denied'/'not determined' 允许 App 读写日历的权限开关
  • 使用到上述提及的权限,开发者需在开发者工具 - project.miniapp.json 中配置权限用途,才会出现授权申请的弹窗。

# 示例代码

const appAuthorizeSetting = wx.getAppAuthorizeSetting()

console.log(appAuthorizeSetting.albumAuthorized)
console.log(appAuthorizeSetting.bluetoothAuthorized)
console.log(appAuthorizeSetting.cameraAuthorized)
console.log(appAuthorizeSetting.locationAuthorized)
console.log(appAuthorizeSetting.locationReducedAccuracy)
console.log(appAuthorizeSetting.microphoneAuthorized)
console.log(appAuthorizeSetting.notificationAlertAuthorized)
console.log(appAuthorizeSetting.notificationAuthorized)
console.log(appAuthorizeSetting.notificationBadgeAuthorized)
console.log(appAuthorizeSetting.notificationSoundAuthorized)
console.log(appAuthorizeSetting.phoneCalendarAuthorized)