HarmonyOS 鸿蒙Next 项目重新运行后Preferences获取不到值

HarmonyOS 鸿蒙Next 项目重新运行后Preferences获取不到值 只能一直运行着项目 项目关闭之后再运行就获取不到值了

而且存取键值的文件在哪啊?

12 回复

楼主您好,重新运行指的是杀掉重启还是重新安装呢,重新安装之后肯定是获取不到数据的。

应用存入数据到Preferences实例后,可以通过flush或者flushSync方法将Preferences实例回写到文件中。具体开发可参考文档:

https://developer.harmonyos.com/cn/docs/documentation/doc-guides/database-preference-guidelines-0000000000030083

更多关于HarmonyOS 鸿蒙Next 项目重新运行后Preferences获取不到值的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


我flush了 他不是会生成一个文件来保存吗?我找不到那个文件 而且重新安装app也没有之前的数据,

重新安装APP当然没有数据啦,app卸载了就全部删除了,

姓名: 张三
职位: 软件工程师
技能: Python, Java, C++
个人简介: 拥有五年软件开发经验,熟悉多种编程语言和技术栈。

估计是忘记flush了

flush了,

你是不是用IDE安装的,IDE默认会卸载原来的APP再安装,不是覆盖安装,

好吧,

基本信息
姓名: 张三
职位: 软件工程师

技能
- Python
- Java
- C++

项目经验
- 项目一: 开发一个Web应用
- 项目二: 参与大数据处理项目

欢迎开发小伙伴们进来帮帮楼主

重新运行指的是杀掉重启还是重新安装呢,重新安装肯定取不到了

重现安装 他不是会生成一个文件来保存吗?

在HarmonyOS鸿蒙系统中,若遇到“Next 项目重新运行后Preferences获取不到值”的问题,可能的原因及解决方案如下:

  1. 数据未正确保存:

    • 确认在保存Preferences数据时,使用了正确的key和正确的数据类型。
    • 检查保存数据的代码是否在程序逻辑上确保被执行。
  2. 数据读取时机问题:

    • 确保在读取Preferences数据之前,数据已经被正确保存。
    • 如果数据保存和读取发生在不同的组件或线程中,考虑同步机制。
  3. Preferences文件被清空或覆盖:

    • 检查是否有代码或逻辑错误导致Preferences文件被重置或删除。
    • 确认应用是否有清理缓存或数据的逻辑,在重新运行时可能影响了Preferences。
  4. 权限问题:

    • 确认应用是否有足够的权限访问Preferences存储位置。
    • 在鸿蒙系统中,尽管通常不需要额外权限来访问内部存储,但检查权限配置总是好的习惯。
  5. 重启策略影响:

    • 如果应用有特定的重启策略,确保重启后Preferences的路径和key没有变化。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部