草庐IT

SharedPreferences

全部标签

android - SharedPreferences 不持久

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

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

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

flutter 一次介绍屏幕?

我的应用有一个介绍屏幕,但每次打开应用时都会显示,我只需要第一次证明这一点。怎么做?//THISISTHESCREENCOMES1STWHENOPENINGTHEAPP(SPLASHSCREEN)classSplashScreenextendsStatefulWidget{@override_SplashScreenStatecreateState()=>_SplashScreenState();}class_SplashScreenStateextendsState{@overridevoidinitState(){super.initState();//After2secondso

flutter 一次介绍屏幕?

我的应用有一个介绍屏幕,但每次打开应用时都会显示,我只需要第一次证明这一点。怎么做?//THISISTHESCREENCOMES1STWHENOPENINGTHEAPP(SPLASHSCREEN)classSplashScreenextendsStatefulWidget{@override_SplashScreenStatecreateState()=>_SplashScreenState();}class_SplashScreenStateextendsState{@overridevoidinitState(){super.initState();//After2secondso

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上找到一个类似的问题:

Android SharedPreferences 限制?

我在Android上开发了一款游戏。我目前将大部分游戏统计数据保存在数据库中。但是,该应用程序不会在数据库中使用超过一行。我现在有兴趣介绍一些新的统计数据,但这会导致我的数据库重新安装,从而清除每个人的进度。为了避免将来出现这种情况,我正在考虑使用SharedPreferences存储游戏统计数据。我的问题是在它成为问题之前可以存储多少不同的东西。总共我将存储大约40个值,所有值都是整数。 最佳答案 SharedPreferences是写入xml文件的,所以Android上一个文件的最大大小就是一个SharedPreferences