草庐IT

sharedpreference

全部标签

Android:SharedPreference:启动时未设置默认值

我的应用程序中有列表首选项。它们似乎并没有在安装后立即设置为默认值——它们似乎是空的。我想弄清楚为什么我的默认首选项在安装后没有立即设置。在我的主要代码中,我有:SharedPreferencessp=PreferenceManager.getDefaultSharedPreferences(this);InUnits=sp.getString("List1","defValue");InAngs=sp.getString("List2","defValue");OutUnits=sp.getString("List3","defValue");OutAngs=sp.getString

android - 如何在 Activity 之外使用 sharedPreferences?

我已经在这个非常简单的问题上停留了几个小时,但我无法通过谷歌找到任何合适的解决方案。我正在尝试在我的应用程序的模型层中使用SharedPreferences类。具体来说,我希望能够在应用程序启动时保存或获取用户名和相应的token(如果用户将应用程序设置为自动登录)。有没有办法让我使用SharedPreferences来解决这个问题,还是我被迫使用FileInput/Output? 最佳答案 你在哪里实例化你的模型类?只需将上下文或SharedPreferences传递给构造函数:publicclassModel{privatefi

android - SharedPreferences 不持久

我在Android中使用SharedPreferences。在同一个session中一切都很好。但是,一旦我重新启动该应用程序,在上一个session中设置的所有首选项都将丢失。我是否需要指定任何内容来告诉SharedPreferences在运行期间停留?我正在通过调用创建首选项SharedPreferencespreferences=PreferenceManager.getDefaultSharedPreferences(this);然后我通过例如设置属性preferences.edit().putString(key,value);我得到它了preferences.getStri

android - Sharedpreference byte[] 值在通过 'Force Stop' 或任务管理器杀死应用程序后清除

问题我正在我的共享首选项中保存一个byte[]。我可以关闭应用程序并使用共享首选项中保留的值重新打开它。当运行应用程序并通过“任务管理器”或“强制关闭”关闭它时,byte[]的共享首选项值将被清除。我不明白这一点,因为其他值(value)观仍然存在。这让我相信这是由于byte[]的一些gson或SharedPreference问题造成的,所以我将它转换为字符串,但问题仍然存在。编辑:我在正常Activity使用期间保存数据...例如,在onCreate()之后。它不是在onPuse()或onDestroy()期间我忘了提到这一点。如果我确实在这里调用它并且其中一个或两个没有在“强制关闭

android - 用于持久数据存储的 SQLite 或 SharedPreferences?

对于数据的持久存储,使用SQLlite数据库比使用SharedPreferences有什么明显的优势,反之亦然?目前我的应用程序数据大小只有几千字节,但可以想象它在未来可能会增加到这个大小的十倍。我找不到任何地方说明使用SharedPreferences可以使用多少存储空间,但可以想象这将是使用它的一个限制吗?这两种方法在速度上有什么区别吗?我正在权衡这两种存储方法的优缺点。 最佳答案 在我的脑海中:共享首选项:专业人士:轻量级快速且易于使用易于调试如果需要,可以手动编辑配置文件缺点:处理大量数据时速度较慢当数据不仅仅是简单的键/值

android - 如何使用 SharedPreferences 保存多个值?

我正在开发一个字典应用程序。在我的应用程序中,我假设用户想要保存最喜欢的词。我决定使用SharedPreferences来保存这些值(我知道SQLite和文件更好,但我坚持使用“SharedPreferences”,所以继续使用它)。下面是我的代码:@OverridepublicvoidonClick(Viewv){SharedPreferencesfaves=PreferenceManager.getDefaultSharedPreferences(getApplicationContext());{SharedPreferences.Editoreditor=faves.edit(

android - BroadcastReceiver 中的 SharedPreferences 似乎没有更新?

我有一个更新SharedPreferences中的字符串的Activity。SharedPreferencessettings=PreferenceManager.getDefaultSharedPreferences(this);SharedPreferences.Editoreditor=settings.edit();editor.putString("username",username);editor.commit();然后我启动一个服务:startService(newIntent(this,MyService.class));该服务创建对扩展BroadcastReceiv

android - 在没有上下文的情况下访问 SharedPreferences

我已阅读问题:this和this关于阅读共享偏好。但是他们仍然需要Context来访问SharedPreferences。我想知道如何在没有上下文的情况下访问SharedPreferences。提前致谢 最佳答案 我通过首先检索ApplicationContext(this)然后使用该上下文获取SharedPreferences来解决我的问题。感谢K-ballo。 关于android-在没有上下文的情况下访问SharedPreferences,我们在StackOverflow上找到一个类

Android:如何在我的应用程序更新时重置 FirstRun SharedPreferences?

我的应用程序在第一次运行时将文件从res/raw复制到SD卡。我希望它在每次后续应用程序更新时更新这些文件。我如何让它在每次应用更新时将首次运行首选项重置为true?相关代码如下:/***getifthisisthefirstrun**@returnreturnstrue,ifthisisthefirstrun*/publicbooleangetFirstRun(){returnmPrefs.getBoolean("firstRun",true);}/***storethefirstrun*/publicvoidsetRunned(){SharedPreferences.Editore

android - SharedPreferences 类的最大大小

我想用SharedPreferences类保存很多字符串。这些字符串很长。我真的很想知道可以保存在android共享首选项中的字符串的最大长度。还有多少数据我可以存储在这个SharedPrefernces类中。 最佳答案 根据android架构,在SharedPreference中存储数据没有这样的限制。当您必须处理大量数据时,更好的方法是使用数据库(SQLite) 关于android-SharedPreferences类的最大大小,我们在StackOverflow上找到一个类似的问题: