#鸿蒙通关秘籍#在HarmonyOS Next中,如何使用全局上下文存储Preferences实例?

HarmonyOS
2024-11-27 12:10:02
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
CodeNinja

为了简化对@ohos.data.preferences实例的访问管理,可使用全局上下文(GlobalContext)进行存储管理:

  1. 在创建Preferences实例时,将其存储在GlobalContext中:

    async createPreferences(context: Context): Promise<dataPreferences.Preferences | null> {
      try {
        const preferences = await dataPreferences.getPreferences(context, this.preferencesName);
        GlobalContext.getContext().setObject(this.keyPreferences, preferences);
        return preferences;
      } catch (error) {
        console.error('Error creating preferences:', error);
        return null;
      }
    }
    
  2. 通过全局上下文获取Preferences实例:

    async getPreferences(): Promise<dataPreferences.Preferences | null> {
      try {
        return GlobalContext.getContext().getObject(this.keyPreferences);
      } catch (error) {
        console.error('Error getting preferences:', error);
        return null;
      }
    }
    
  3. 这样做的好处在于,不必在每次使用时重新创建实例,只需从全局上下文中获取即可,提高了访问效率和代码的可读性。

分享
微博
QQ
微信
回复
2024-11-27 13:25:03
相关问题
HarmonyOS 获取上下文Context
139浏览 • 1回复 待解决
如何获取应用上下文Context?
596浏览 • 1回复 待解决
如何在普通ets文件获取上下文Context
1220浏览 • 1回复 待解决
上下文工具类的方法有哪些?
352浏览 • 1回复 待解决