1/* 2 * Copyright (c) Huawei Technologies Co., Ltd. 2024-2024. All rights reserved. 3 */ 4import { BusinessError } from '@ohos.base' 5import { Logger } from '../common/util/HiLogger' 6import { MusicApp } from '../common/global/globalmodel/GlobalModel'; 7import { createOrGet, globalKeys } from '../common/global/GlobalThisHelper' 8import { PreferenceManager } from '../common/preference/PreferenceManager' 9 10const keyPermissionTipLog = 'Key_Permission_TipLog' 11const logger: Logger = new Logger('AudioPickerPreference') 12const app: MusicApp = createOrGet(MusicApp, globalKeys.app, ['phone']); 13 14export class AudioPickerPreference { 15 private preferenceManager: PreferenceManager = createOrGet(PreferenceManager, 16 globalKeys.preferenceManager, [app.abilityContext]) 17 18 /** 19 * 保存安全提示状态 20 * @param isFirstStartUp 21 */ 22 public saveSafetyTipStatus(isFirstStartUp: boolean): void { 23 this.preferenceManager.put(keyPermissionTipLog, isFirstStartUp, true, 24 this.preferenceManager.preferKeys.audioPicker).then((res) => { 25 logger.info(`saveSafetyTipStatus Success ? : ${res}`) 26 }).catch((err: BusinessError) => { 27 logger.error(`saveSafetyTipStatus Fail, err name:${err.name} , err message:${err.message}`) 28 }) 29 } 30 31 /** 32 * 获取权限状态 33 * 34 * @returns boolean 35 */ 36 public getSafetyTipStatus(): Promise<boolean> { 37 return new Promise((resolve) => { 38 this.preferenceManager.get(keyPermissionTipLog, false, 39 this.preferenceManager.preferKeys.audioPicker).then((res) => { 40 resolve(res as boolean) 41 }).catch((err: BusinessError) => { 42 logger.error(`getPrivacyStatus error, err name:${err.name}, err message:${err.message}`) 43 resolve(false) 44 }) 45 }) 46 } 47} 48 49