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