dataPreferences.Preferences覆盖安装丢失数据,我这边开发工具重新运行安装,数据就没有了。直接杀进程,都是存在的
put(key: string, value: dataPreferences.ValueType, callback?: Function) {
try {
this.preferences.then(edit => {
edit.put(key, value);
edit.flush();
if (callback) {
callback(true);
}
}).catch(() => {
if (callback) {
callback(false);
}
})
} catch (e) {
LogUtil.e(`${key}保存异常,原因:${e}`)
if (callback) {
callback(false);
}
}
}
/**
* 获取保存的字符串
* @param key 键
* @param callback 回调
*/
get(key: string, callback: Function, defaultValue?: dataPreferences.ValueType) {
try {
this.preferences.then(edit => {
edit.get(key, defaultValue).then(value => {
// LogUtils.i(`${key}取值为${value}`)
callback(value)
})
}).catch(() => {
callback(defaultValue);
})
} catch (e) {
LogUtil.e(`${key}获取异常,原因:${e}`)
callback(defaultValue);
}
}
Preferences是应用级存储,卸载app后会清除。
可以尝试在 edit configuration 中 勾选 keep Application Data,