1/* 2 * Copyright (c) 2022 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15import preferences from '@ohos.data.preferences' 16import Logger from '../model/Logger' 17 18const TAG: string = '[PreferencesUtils]' 19const PREFERENCES_NAME: string = 'myPreferences' 20const PASSWORD_KEY: string = 'password' 21 22class PreferencesUtils { 23 private mPreferences: preferences.Preferences | undefined = undefined 24 25 async getPassword(context: any) { 26 Logger.info(TAG, `get passworld`) 27 if (this.mPreferences === undefined) { 28 this.mPreferences = await preferences.getPreferences(context, PREFERENCES_NAME) 29 } 30 return await this.mPreferences.get(PASSWORD_KEY, 'null') 31 } 32 33 async setPassword(passWorld: string, context: any) { 34 Logger.info(TAG, `set passworld`) 35 if (this.mPreferences === undefined) { 36 this.mPreferences = await preferences.getPreferences(context, PREFERENCES_NAME) 37 } 38 await this.mPreferences.put(PASSWORD_KEY, passWorld) 39 await this.mPreferences.flush() 40 Logger.debug(TAG, `setPassword end`) 41 } 42} 43export default new PreferencesUtils()