问题标签 [android-sharedpreferences]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
80 浏览

android - 带有 SharedPreferences 的 NullPointerException

我的逻辑我试图从我的 Main.java 文件中获取一个 textView,当单击通知时,它应该打印它。我知道我要为此使用 sharedPreferences 。我这样做了。但是,它一直抛出 NullPointerException,但我已经调用了我需要在 NotificationPage.java 类中调用的所有内容,所以我不确定到底是什么问题。请任何帮助表示赞赏。

这是我的 NotificationPage.java 类

这是从我的其他 java 文件中获取我的共享首选项的代码行

0 投票
0 回答
1783 浏览

android - 在测验游戏中使用 SharedPreferences 实现分数和高分

所以我在这里有一个使用 Android Studio 的测验游戏。我已经在我的问答游戏中实现了这一点。如果答案是正确的,则分数与之前的分数相加,我认为这很好,但是当我尝试打开HighScore Activity应用程序时会崩溃。这是我的代码PlayQuizActivity

PlayQuizActivity我不包括所有的代码,但只有一些。

这是代码HighScores

希望你能帮我解决这个问题。

0 投票
1 回答
90 浏览

android - 为什么 SharedPreferences 不支持字符串列表?

为什么SharedPreferences.Editor有方法putStringSet()但没有方法putStringList()?这对我来说没有任何意义。我的理解(这可能是错误的)是SharedPreferences对象是使用内部存储的xml,并且xml支持数组。

我知道一个SharedPreference对象旨在成为少量数据的简单对象,因此您不希望拥有太多put方法,但我想如果您要拥有putStringSet()or之一putStringList()putStringList()则更普遍有用(一组可以保存为列表,但反之不行)并且更易于实现。谁能解释一下?

0 投票
2 回答
5734 浏览

android - SharedPreferences 未保存在服务的 onDestroy 中

在活动被杀死(何时OnDestroy被调用)之前,我将一些int值保存在SharedPreferences.

但我注意到的是,保存值大约需要一秒钟,但应用程序在销毁Activity.

我可以Wait在它被杀死之前做一些事情吗?

这是我的例子:

======================>> 编辑 <<======================

我犯了一个错误,说这是为了一个,Activity但事实并非如此。我正在调用服务onDestroy,不幸的是没有方法可以覆盖那里......onPause

0 投票
1 回答
33 浏览

android - 使用 SharedPreferences 显示字符串不起作用

我创建了一个从strings.xmlwith中获取 StringSharedPreferences并将其显示在TextView. 没有错误报告,但没有TextView显示任何内容。有问题SharedPreferences吗?字符串和TextView是正确的。

0 投票
1 回答
523 浏览

java - 如何在不扩展 Activity 的情况下使用 getSharedPreferences?

我有一个扩展 SurfaceView 的 GamePanel 类,所以我不能为 SharedPreferences 扩展 Activity。如何在不扩展类的情况下使用 getSharedPreferences?

我已经尝试过:

但是,我收到一条错误消息,提示“无法从静态上下文中引用。

0 投票
6 回答
469 浏览

android - 自定义类扩展了单例用途的应用程序

我尝试创建自定义类以从 SharedPreferences 中获取一些值。我的目标是从任何班级达到这种价值观。

我得到空指针异常

我的代码如下;

可能是什么问题?

0 投票
0 回答
99 浏览

android - 如何在更新时擦除 sharedpreferences 字段或如何检查 sharedpreferences 字段类型是否已更改

编辑:

我的搜索只产生关于如何不删除 SharedPreferences 或如何使用一些新值(如空白/null/0)编辑首选项的结果

在我的更新期间,一些变量被重命名/替换/移动......

那么,假设更新更改,我如何在首选项上强制执行 google play 更新请求数据更改?我希望用户不要输入旧内容(如果存在),但是,假设要放弃整个偏好。

例子:

v1 "MainActivity".preference = String "Name" Boolean "something"

v2 "MainActivity".preference = String "Name" Char "something"

因此,在更新 v2 上,应该保持整个偏好,同时删除某些内容,然后重新读取。

使用Intent."ACTION_PACKAGE_REPLACED"然后手动擦除应用程序上的所有内容似乎是要走的路,作为“快速修复”,但是有没有办法要求卸载应用程序(因此任何非硬盘文件被遗忘),然后重新安装,然后请求运行?

据我所知,在 Kitkat 及更高版本上,必须手动打开新安装。

我的项目目前处于 Beta 阶段,这里的更新应该很常见。我想要的是确保我收到的日志都是最新的但是如果应用程序没有更新,那么日志应该有它的旧内容......

0 投票
1 回答
5220 浏览

android - 带有令牌的Android WebView无法访问该帐户

我尝试通过 WebView 访问我的网站,但在向我的用户显示 WebView 之前,他们必须输入用户名和密码,然后他们才能在 WebView 中看到他们的帐户仪表板。问题是实际上我可以保留我的 auth_token 并将其存储到 SharedPreferences 中,但是在我如何对我的 webview 说这个用户已经完成登录并且已经拥有 auth_token 之后?我会允许我的用户在我的 android 应用程序上使用该网站。这是代码: public class Login_Page extends Activity{ private SharedPreferences mPreferences;

0 投票
1 回答
638 浏览

android - 重复使用 Android Shared Preference 存储会影响性能吗?

我的应用程序在 Android 服务中使用 LocationListener 来获取频繁更新的位置。应用程序有一些存储在共享首选项中的位置过滤器相关数据。要求是尽可能频繁地更新位置。我从听众的 onLocationChanged 中的 Shared Preference 中检索数据。这是我的代码

使用上述代码 sharedPreference 以重复方式使用。

我已经尝试将过滤器变量放在 onLocationChanged 之外,但是当服务重新启动时,值会丢失并设置为零。

我只是想知道这是好的做法吗?我应该使用其他选项吗?