我有一个奇怪的问题。我以前从未有过。当我尝试将int值保存到我的SharedPreference然后在其他Activity中恢复时。即使我在那里保存其他值(例如:1),值始终为0;privateStringNumber;privateStringProfile;然后将值(在本例中为“1”)保存到第一个Activity中的SharedPreferences:SharedPreferencesa=FirstActivity.this.getSharedPreferences("a",MODE_PRIVATE);SharedPreferences.EditorprefsEditorProfi
我有一个SharedPreference来计算我的应用程序的启动次数。当我安装我的应用程序时,我希望它为0。尽管如此,它是14。我在数据库中观察到的同样奇怪的行为已经存在于全新安装中。我无意回收我的应用数据(例如在GoogleCloud中)。在我的设备上的帐户设置中,应用程序数据同步已打开。如果我将其关闭并重新安装,我会观察到相同的行为。有人观察过这种行为吗?有什么方法可以防止回收旧数据并强制正确安装? 最佳答案 在AndroidMarshmallow中,Google引入了“自动备份”功能,如果您的targetSdkVersion>
我在SharedPreferences中有一些键值对,有整数、float、字符串等。有什么方法可以检查给定的键是否属于特定类型?编辑我研究了文档和可用的方法。可悲的是,在我看来,我需要使它成为一种“肮脏”的方式,只是尝试每种get方法,直到我得到与默认设置不同的值作为参数。这是我唯一想到的,但不太喜欢它... 最佳答案 您可以遍历SharedPreferences中的所有条目并检查数据类型通过使用值的getClass函数获取每个条目。Mapkeys=sharedPreferences.getAll();for(Map.Entryen
我已经在ANdroid开发者网站上完成了PreferenceFragments和SharedPreferences的示例,但是我现在遇到了一个问题。我希望能够从不同的Activity访问我的“设置”屏幕中的首选项,但我不知道我的首选项fragment生成的首选项文件的名称是什么。有谁知道为PreferenceFragment指定首选项文件名? 最佳答案 首选项应保存到默认文件。要访问,请使用PreferenceManager#getDefaultSharedPreferences()SharedPreferencesprefs=Pr
我有一个自定义类Task的ArrayListpublicclassTask{Stringname,desc;Datedate;Contextcontext;publicTask(Stringname,Stringdesc,Datedate,Contextcontext){this.name=name;this.desc=desc;this.date=date;this.context=context;}}我想将它保存在SharedPreferences中。我读到可以通过将它转换为Set来完成。但我不知道该怎么做。有没有办法做到这一点?或任何其他方式来存储数据而不是SharedPrefe
我是Android的新手,我连续6个小时都被卡住了。问题是我不知道首选项文件的名称,我需要从首选项文件中获取值。我正在使用AndroidStudio并创建了一个“设置Activity”。除了SettingsActivity.java之外,我一直没有给任何文件命名。所以我的问题是共享首选项文件的名称是什么(因为应用程序保留了这些值)。或者,如果有办法找出答案。或者我可能在代码中遗漏了一些明显的东西。以下是我的相关代码。Stringkey="example_text";finalStringPREF_FILE_NAME="SettingsActivity";SharedPreference
我使用共享首选项来存储我的应用程序启动的次数。只有在第一次启动时,我才会显示一条欢迎消息,告诉用户该版本的新功能和更改。但是当我专注于重新安装应用程序或升级应用程序时,我无法删除以前的共享首选项。我也希望在重新安装软件或升级软件时获得该对话框。应用启动器publicclassAppLauncher{staticlonglaunch_count=0;privatestaticbooleanisLaunch=false;publicstaticvoidapp_launched(ContextmContext){System.out.println("IminAppLauncher");Sh
只有带有android:defaultValue="true"的CheckboxPreference键才会显示在下面的代码中。因此没有显示defaultValue="false"的键。我如何在我的首选项文件中获取所有键的列表?PreferenceManager.setDefaultValues(this,R.xml.settings,true);//readAgain=falseissameresultSharedPreferencesprefs=PreferenceManager.getDefaultSharedPreferences(this);MapprefMap=prefs.g
我一直在绞尽脑汁想弄清楚这个问题:我正在制作一个HttpsURLConnection并使用java.net.cookiemanager来管理我的cookie(没有办法使用android.webkit.cookiemanager来处理HttpUrlConnection/HttpsUrlConnection,因为我明白了吗?)。我需要将我的长期cookie保存到以后的连接中。遗憾的是我不能使用http://loopj.com/android-async-http/它是PersistentCookieStore因为我需要允许不受信任的证书(使用http://abhinavasblog.blo
我发现了这个奇怪的OutOfMemoryError,我想知道是否还有其他人遇到过它。我稍微违反了SharedPreferences的规则,并将几个模型对象存储为字符串,但它们很小。java.lang.OutOfMemoryErroratcom.android.internal.util.FastXmlSerializer.(FastXmlSerializer.java:55)atcom.android.internal.util.XmlUtils.writeMapXml(XmlUtils.java:177)atandroid.app.SharedPreferencesImpl.writ