fix: 授权代码优化
This commit is contained in:
		
							parent
							
								
									3f6137f4f2
								
							
						
					
					
						commit
						84bf4184e3
					
				| @ -4,7 +4,6 @@ import { BusinessError } from '@ohos.base'; | |||||||
| import { CommonFileTag } from '../config'; | import { CommonFileTag } from '../config'; | ||||||
| import abilityAccessCtrl, { Permissions } from '@ohos.abilityAccessCtrl'; | import abilityAccessCtrl, { Permissions } from '@ohos.abilityAccessCtrl'; | ||||||
| import Prompt from '@system.prompt'; | import Prompt from '@system.prompt'; | ||||||
| import { dConsole } from './LogWorker'; |  | ||||||
| import common from '@ohos.app.ability.common'; | import common from '@ohos.app.ability.common'; | ||||||
| 
 | 
 | ||||||
| enum timeType { | enum timeType { | ||||||
| @ -263,10 +262,7 @@ export function ApplyForAuthorization(context: Context, permissionList: Array<Pe | |||||||
|   * @return 返回一个 Promise,解析为 true 如果授权成功,否则为 false |   * @return 返回一个 Promise,解析为 true 如果授权成功,否则为 false | ||||||
|  */ |  */ | ||||||
| export async function UseAuth(context: common.UIAbilityContext): Promise<boolean> { | export async function UseAuth(context: common.UIAbilityContext): Promise<boolean> { | ||||||
|   dConsole.log("权限授权开始1") |   const permissions: Array<Permissions> = [ | ||||||
|   return new Promise((resolve, reject) => { |  | ||||||
|     const permissions: Array<Permissions> = |  | ||||||
|       [ |  | ||||||
|     "ohos.permission.SET_TIME", |     "ohos.permission.SET_TIME", | ||||||
|     "ohos.permission.READ_IMAGEVIDEO", |     "ohos.permission.READ_IMAGEVIDEO", | ||||||
|     "ohos.permission.DISTRIBUTED_DATASYNC", |     "ohos.permission.DISTRIBUTED_DATASYNC", | ||||||
| @ -276,22 +272,16 @@ export async function UseAuth(context: common.UIAbilityContext): Promise<boolean | |||||||
|     "ohos.permission.WRITE_MEDIA", |     "ohos.permission.WRITE_MEDIA", | ||||||
|     "ohos.permission.FILE_ACCESS_MANAGER" |     "ohos.permission.FILE_ACCESS_MANAGER" | ||||||
|   ]; |   ]; | ||||||
|     dConsole.log("权限授权开始2") | 
 | ||||||
|     abilityAccessCtrl.createAtManager().requestPermissionsFromUser(context, permissions).then(res => { |   try { | ||||||
|       let grantStatus: Array<number> = res.authResults; |     const res = await abilityAccessCtrl.createAtManager().requestPermissionsFromUser(context, permissions); | ||||||
|       let length: number = grantStatus.length; |     const grantStatus = res.authResults; | ||||||
|       dConsole.log("权限", length) |     if (grantStatus.every(status => status === 0)) { | ||||||
|       dConsole.log("权限状态", JSON.stringify(grantStatus)) |       return true; | ||||||
|       resolve(true) |     } else { | ||||||
|       for (let i = 0; i < length; i++) { |       return false; | ||||||
|         if (grantStatus[i] !== 0) { |  | ||||||
|           reject(false) |  | ||||||
|           return; |  | ||||||
|     } |     } | ||||||
|  |   } catch (err) { | ||||||
|  |     return false; | ||||||
|   } |   } | ||||||
|     }).catch((err: BusinessError) => { |  | ||||||
|       dConsole.error("获取权限失败", JSON.stringify(err)) |  | ||||||
|       reject(false) |  | ||||||
|     }) |  | ||||||
|   }) |  | ||||||
| } | } | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user