应用首次调用getPreferences接口获取某个Preferences实例后,该实例会被会被缓存起来,后续再次getPreferences时不会再次从持久化文件中读取,直接从缓存中获取Preferences实例export function initPreferenceTool(paramContext: common.Context){ context = paramContext let observer = (key: string) => { console.info("The key " + key + " changed."); dataPreferences.removePreferencesFromCacheSync(context, options); preferences = null } if (preferences === null) { preferences = dataPreferences.getPreferencesSync(context, options); } preferences.on('multiProcessChange', observer); } export function getValue(key: string): string{ if (preferences === null) { preferences = dataPreferences.getPreferencesSync(context, options); } return preferences.getSync(key, '') as string }
应用首次调用getPreferences接口获取某个Preferences实例后,该实例会被会被缓存起来,后续再次getPreferences时不会再次从持久化文件中读取,直接从缓存中获取Preferences实例