interface.uts 10.5 KB
Newer Older
DCloud-yyl's avatar
DCloud-yyl 已提交
1 2 3 4 5 6 7 8
export interface Uni {
  /**
    * getAppAuthorizeSetting()
    * @description 
    * 获取 APP 授权设置。
    * @param {void}  
    * @return {GetAppAuthorizeSettingResult}
    * @tutorial http://uniapp.dcloud.io/api/system/getappauthorizesetting
DCloud-yyl's avatar
DCloud-yyl 已提交
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
    * @uniPlatform
	* {
	* 	"app": {
	* 		"android": {
	* 			"osVer": "5.0",
	* 			"uniVer": "√",
	* 			"unixVer": "3.9+"
	* 		},
	* 		"ios": {
	* 			"osVer": "9.0",
	* 			"uniVer": "√",
	* 			"unixVer": "x"
	* 		}
	* 	}
	* }
DCloud-yyl's avatar
DCloud-yyl 已提交
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
    * @example
     ```typescript
      uni.getAppAuthorizeSetting()
     ```
    */
  getAppAuthorizeSetting(): GetAppAuthorizeSettingResult;
}


export type GetAppAuthorizeSetting = () => GetAppAuthorizeSettingResult;
export type GetAppAuthorizeSettingResult = {
  /**
   * 允许 App 使用相册的开关(仅 iOS 支持)
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
   * @type 'authorized' | 'denied' | 'not determined'
DCloud-yyl's avatar
DCloud-yyl 已提交
41 42 43 44 45 46 47 48 49 50 51 52 53 54
   * @uniPlatform 
   * {
   * 	"app": {
   * 		"android": {
   * 			"osVer": "x",
   * 			"uniVer": "x",
   * 			"unixVer": "x"
   * 		},
   * 		"ios": {
   * 			"osVer": "9.0",
   * 			"uniVer": "√",
   * 			"unixVer": "x"
   * 		}
   * 	}
DCloud-yyl's avatar
DCloud-yyl 已提交
55 56
   * }
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
57
  albumAuthorized?: 'authorized' | 'denied' | 'not determined' | null,
DCloud-yyl's avatar
DCloud-yyl 已提交
58 59 60 61 62 63 64
  /**
   * 允许 App 使用蓝牙的开关(仅 iOS 支持)
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
   * - config error: Android平台没有该值;iOS平台:表示没有在 `manifest.json -> App模块配置` 中配置 `BlueTooth(低功耗蓝牙)` 模块
   * @type 'authorized' | 'denied' | 'not determined' | 'config error'
DCloud-yyl's avatar
DCloud-yyl 已提交
65 66 67 68 69 70 71 72 73 74 75 76 77 78
   * @uniPlatform
   * {
   * 	"app": {
   * 		"android": {
   * 			"osVer": "x",
   * 			"uniVer": "x",
   * 			"unixVer": "x"
   * 		},
   * 		"ios": {
   * 			"osVer": "9.0",
   * 			"uniVer": "√",
   * 			"unixVer": "x"
   * 		}
   * 	}
DCloud-yyl's avatar
DCloud-yyl 已提交
79 80
   * }
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
81
  bluetoothAuthorized?: 'authorized' | 'denied' | 'not determined' | 'config error' | null,
DCloud-yyl's avatar
DCloud-yyl 已提交
82 83 84 85 86
  /**
   * 允许 App 使用摄像头的开关
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
DCloud-yyl's avatar
DCloud-yyl 已提交
87
   * - config error: Android平台:表示没有配置 `android.permission.CAMERA` 权限,[权限配置详情](https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.html#permissions);iOS平台没有该值
DCloud-yyl's avatar
DCloud-yyl 已提交
88 89
   * @type 'authorized' | 'denied' | 'not determined' | 'config error'
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
90
  cameraAuthorized: 'authorized' | 'denied' | 'not determined' | 'config error',
DCloud-yyl's avatar
DCloud-yyl 已提交
91 92 93 94 95
  /**
   * 允许 App 使用定位的开关
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
DCloud-yyl's avatar
DCloud-yyl 已提交
96
   * - config error: Android平台:表示没有配置 `android.permission.ACCESS_COARSE_LOCATION` 权限,[权限配置详情](https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.html#permissions);iOS平台:表示没有在 `manifest.json -> App模块配置` 中配置 `Geolocation(定位)` 模块
DCloud-yyl's avatar
DCloud-yyl 已提交
97 98
   * @type 'authorized' | 'denied' | 'not determined' | 'config error'
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
99
  locationAuthorized: 'authorized' | 'denied' | 'not determined' | 'config error',
DCloud-yyl's avatar
DCloud-yyl 已提交
100
  /**
DCloud-yyl's avatar
DCloud-yyl 已提交
101
   * 定位准确度。
DCloud-yyl's avatar
DCloud-yyl 已提交
102 103 104 105 106
   * - reduced: 模糊定位
   * - full: 精准定位
   * - unsupported: 不支持(包括用户拒绝定位权限和没有在 `manifest.json -> App模块配置` 中配置 `Geolocation(定位)` 模块)
   * @type 'reduced' | 'full' | 'unsupported'
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
107
  locationAccuracy?: 'reduced' | 'full' | 'unsupported' | null,
DCloud-yyl's avatar
DCloud-yyl 已提交
108 109 110
  /**
   * 定位准确度(推荐使用 locationAccuracy 属性)。true 表示模糊定位,false 表示精确定位(仅 iOS 支持)
   * @type boolean
DCloud-yyl's avatar
DCloud-yyl 已提交
111 112 113 114 115 116 117 118 119 120 121 122 123 124
   * @uniPlatform
   * {
   * 	"app": {
   * 		"android": {
   * 			"osVer": "x",
   * 			"uniVer": "x",
   * 			"unixVer": "x"
   * 		},
   * 		"ios": {
   * 			"osVer": "9.0",
   * 			"uniVer": "√",
   * 			"unixVer": "x"
   * 		}
   * 	}
DCloud-yyl's avatar
DCloud-yyl 已提交
125 126
   * }
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
127
  locationReducedAccuracy?: boolean | null,
DCloud-yyl's avatar
DCloud-yyl 已提交
128 129 130 131 132
  /**
   * 允许 App 使用麦克风的开关
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
DCloud-yyl's avatar
DCloud-yyl 已提交
133
   * - config error: Android平台:表示没有配置 `android.permission.RECORD_AUDIO` 权限,[权限配置详情](https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-android.html#permissions);iOS平台没有该值
DCloud-yyl's avatar
DCloud-yyl 已提交
134 135
   * @type 'authorized' | 'denied' | 'not determined' | 'config error'
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
136
  microphoneAuthorized: 'authorized' | 'denied' | 'not determined' | 'config error',
DCloud-yyl's avatar
DCloud-yyl 已提交
137 138 139 140 141 142 143 144
  /**
   * 允许 App 通知的开关
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
   * - config error: Android平台没有该值;iOS平台:表示没有在 `manifest.json -> App模块配置` 中配置 `Push(推送)` 模块
   * @type 'authorized' | 'denied' | 'not determined' | 'config error'
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
145
  notificationAuthorized: 'authorized' | 'denied' | 'not determined' | 'config error',
DCloud-yyl's avatar
DCloud-yyl 已提交
146 147 148 149 150 151 152
  /**
   * 允许 App 通知带有提醒的开关(仅 iOS 10.0+ 支持)
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
   * - config error: 没有在 `manifest.json -> App模块配置` 中配置 `Push(推送)` 模块
   * @type 'authorized' | 'denied' | 'not determined' | 'config error'
DCloud-yyl's avatar
DCloud-yyl 已提交
153 154 155 156 157 158 159 160 161 162 163 164 165 166
   * @uniPlatform
   * {
   * 	"app": {
   * 		"android": {
   * 			"osVer": "x",
   * 			"uniVer": "x",
   * 			"unixVer": "x"
   * 		},
   * 		"ios": {
   * 			"osVer": "10.0",
   * 			"uniVer": "√",
   * 			"unixVer": "x"
   * 		}
   * 	}
DCloud-yyl's avatar
DCloud-yyl 已提交
167 168
   * }
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
169
  notificationAlertAuthorized?: 'authorized' | 'denied' | 'not determined' | 'config error' | null,
DCloud-yyl's avatar
DCloud-yyl 已提交
170 171 172 173 174 175 176
  /**
   * 允许 App 通知带有标记的开关(仅 iOS 10.0+ 支持)
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
   * - config error: 没有在 `manifest.json -> App模块配置` 中配置 `Push(推送)` 模块
   * @type 'authorized' | 'denied' | 'not determined' | 'config error'
DCloud-yyl's avatar
DCloud-yyl 已提交
177 178 179 180 181 182 183 184 185 186 187 188 189 190
   * @uniPlatform
   * {
   * 	"app": {
   * 		"android": {
   * 			"osVer": "x",
   * 			"uniVer": "x",
   * 			"unixVer": "x"
   * 		},
   * 		"ios": {
   * 			"osVer": "10.0",
   * 			"uniVer": "√",
   * 			"unixVer": "x"
   * 		}
   * 	}
DCloud-yyl's avatar
DCloud-yyl 已提交
191 192
   * }
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
193
  notificationBadgeAuthorized?: 'authorized' | 'denied' | 'not determined' | 'config error' | null,
DCloud-yyl's avatar
DCloud-yyl 已提交
194 195 196 197 198 199 200
  /**
   * 允许 App 通知带有声音的开关(仅 iOS 10.0+ 支持)
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
   * - config error: 没有在 `manifest.json -> App模块配置` 中配置 `Push(推送)` 模块
   * @type 'authorized' | 'denied' | 'not determined' | 'config error'
DCloud-yyl's avatar
DCloud-yyl 已提交
201 202 203 204 205 206 207 208 209 210 211 212 213 214
   * @uniPlatform
   * {
   * 	"app": {
   * 		"android": {
   * 			"osVer": "x",
   * 			"uniVer": "x",
   * 			"unixVer": "x"
   * 		},
   * 		"ios": {
   * 			"osVer": "10.0",
   * 			"uniVer": "√",
   * 			"unixVer": "x"
   * 		}
   * 	}
DCloud-yyl's avatar
DCloud-yyl 已提交
215 216
   * }
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
217
  notificationSoundAuthorized?: 'authorized' | 'denied' | 'not determined' | 'config error' | null,
DCloud-yyl's avatar
DCloud-yyl 已提交
218 219 220 221 222 223
  /**
   * 允许读写日历的开关(仅微信小程序支持)
   * - authorized: 已经获得授权,无需再次请求授权
   * - denied: 请求授权被拒绝,无法再次请求授权;(此情况需要引导用户打开系统设置,在设置页中打开权限)
   * - not determined: 尚未请求授权,会在App下一次调用系统相应权限时请求;(仅 iOS 会出现。此种情况下引导用户打开系统设置,不展示开关)
   * @type 'authorized' | 'denied' | 'not determined'
DCloud-yyl's avatar
DCloud-yyl 已提交
224 225 226 227 228 229 230 231 232 233 234 235 236 237
   * @uniPlatform
   * {
   * 	"app": {
   * 		"android": {
   * 			"osVer": "x",
   * 			"uniVer": "x",
   * 			"unixVer": "x"
   * 		},
   * 		"ios": {
   * 			"osVer": "x",
   * 			"uniVer": "x",
   * 			"unixVer": "x"
   * 		}
   * 	}
DCloud-yyl's avatar
DCloud-yyl 已提交
238 239
   * }
   */
DCloud-yyl's avatar
DCloud-yyl 已提交
240
  phoneCalendarAuthorized?: 'authorized' | 'denied' | 'not determined' | null
DCloud-yyl's avatar
DCloud-yyl 已提交
241
};