gpt4 book ai didi

Android getDefaultSharedPreferences

转载 作者:IT王子 更新时间:2023-10-28 23:41:36 24 4
gpt4 key购买 nike

我的代码是:

final String eulaKey = "mykey";
final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
boolean hasBeenShown = prefs.getBoolean(eulaKey, false);

总是根据操作系统版本返回不同的值。在 2.2、2.3.4、3.2、4.0.3 中测试 - 返回正确值。但是对于带有 2.3.7 和 CianogenMod 7.1 的设备 Zte Blade - 结果总是错误的。我想 getBoolean 的默认值。

这里是写 bool 值的代码:

final String eulaKey = "mykey";
final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
SharedPreferences.Editor editor = prefs.edit();
editor.putBoolean(eulaKey, true);
editor.commit();

有人知道吗?

更新:将我当前的代码与我以前的代码版本进行比较 - 代码没有区别。唯一的区别在于 list :代码在 minVersion=8 和 targetVersion=8 下工作正常现在我正在使用 minversion=8 和 target=13/because of Admob/进行编译。也许有些 API 发生了变化,但我对此一无所获。

解决方案:- 从快捷方式和菜单启动应用程序给了我不同的 DefaultSharedPreferences。从我的代码中删除 DefaultSharedPreferences 后 - 它运行完美。我不能只说:人们不会做捷径,所以我不得不更改代码。

最佳答案

试试这个方法:

final String eulaKey = "mykey";
Context mContext = getApplicationContext();
mPrefs = mContext.getSharedPreferences("myAppPrefs", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = mPrefs.edit();
editor.putBoolean(eulaKey, true);
editor.commit();

在这种情况下,您可以指定自己的首选项文件名 (myAppPrefs) 并控制对其的访问权限。其他操作模式包括:

  • MODE_WORLD_READABLE
  • MODE_WORLD_WRITEABLE
  • MODE_MULTI_PROCESS

关于Android getDefaultSharedPreferences,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10786172/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com