Articles of 共享偏好

使用SharedPreferences进行安全性

我正在开发一个应用程序,我必须存储非常敏感的数据,它不应该与用户联系。 我从这个来源得知,如果一个设备是root用户,那么访问SharedPreferences并修改它是一个很小的步骤。 我不想要它。 那么有什么方法可以保护我的SharedPreferences不被任何地方访问。 或者更好的是,如果有人可以建议更安全的数据存储选项

共享首选项错误中的MODE_PRIVATE

我使用此代码作为BroadcastReceiver,但它说 MODE_PRIVATE无法解析为variablesbroadcastreceiver public class anyNewService extends BroadcastReceiver { String uid,text; int c=1; @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub SharedPreferences settings =getSharedPreferences(“CASPreferences”, MODE_PRIVATE); uid = settings.getString(“uid”, “”); anyNewCheker(); } public void anyNewCheker() { HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost(“http://10.0.2.2/cas/users/anynew.php”); try { List nameValuePairs = new […]

删除SharedPreferences文件

我允许用户创建多个SharedPreferences文件,但我也希望他们选择删除这些文件。 我知道我可以使用内部存储,但这不是我的问题。 我的问题是:“如何删除(不仅仅是清除) SharedPreferences文件?”

如何检查SharedPreferences文件是否存在

我正在寻找一个Android共享首选项,我想知道有没有办法只检查首选项文件是否存在。 SharedPreferences mySharedPreferences ; mySharedPreferences=getSharedPreferences(“Name_of_your_preference”,mode); 上面的代码让我相信“Name_of_Your_preferene”存储为一个文件或某种包含您的首选项的容器。 我想知道是否在那里检查是否存在。 当用户加载活动时,我想将所有设置保存到此文件中,并带有一些默认值(所有设置均为关闭)。 但是,如果他们第一次访问该页面,我只想这样做。 否则,如果每次页面加载时我都会这样做 SharedPreferences.Editor editor= mySharedPreferences.edit(); /* now store your primitive type values. In this case it is true, 1f and Hello! World */ editor.putBolean(“myBoolean”,true); editor.putFloat(“myFloat”,1f); editor.putString(“myString”,” Hello! World”); 我猜它会覆盖他们设置的所有设置。

阅读共享偏好

我正在使用我的Android应用程序的设置菜单的共享首选项。 它工作得很好,但我不知道如何在我的代码上使用这些设置: 例如,如何使用所选语言并在另一个活动中使用它:

Android – 拥有多个共享首选项是不好的做法吗?

我有一个使用SharedPreferences的应用程序。 一个只是存储应用程序版本以检查更改日志的更新,另一个包含一些布局信息, clear()在用户选择时被调用。 我终于设法让PreferenceFragment工作并发现了一个趋势,所以我想我可能会在我偏爱疯狂之前问这个(尽管我认为我已经足够了)。 我已经尽力搜索并没有特别提到问题,只是有可能有倍数。 我有点担心PreferenceManager.getDefaultSharedPreferences()抓住错误的pref,但我可能只是误解了用法。 我可以从我的活动中想到的唯一相关代码: SharedPreferences storedVer = getSharedPreferences(VER_NUM, 0); SharedPreferences savedLayout = getSharedPreferences(LAYOUT_SAVE, 0);

当Android SharedPreferences commit()返回false时?

在我的应用程序中,我将一些重要数据存储在SharedPreferences – 它可以根据需要运行。 现在我想为一些不正确的情况创建日志消息。 我有情况的消息,当首选项为空或只是在加载时抛出一些exception。 如果commit()方法返回false,则只有在保存时才会出现不正确的情况 – 我不知道为什么会发生这种情况以及在这种情况下应该做些什么。 所以问题是 – 当commit()方法返回false时? while(!editor.commit()) {;}可以成为成功的解决方案吗?

SharedPreferences总是在我现有的应用程序中获得默认值,但是在创建新应用程序时它可以

SharedPreferences在一个现有应用中无法正常工作。 我尝试了很多不同的方法,但仍然没有工作。 始终获取默认值app start start。 当我在创建的新应用程序中使用相同的代码时,它正在工作。 它正在运行所有其他现有应用程序。 你知道为什么吗? String default_user = “Default_User”; SharedPreferences pref = this.getSharedPreferences(“TEST_SHAREDPREF”, MODE_PRIVATE); String user = pref.getString(“user”, default_user); Log.d(“SHARED CHECK”, user); if (user.equals(default_user)) { SharedPreferences.Editor edit = pref.edit(); edit.putString(“user”, “new_user”); boolean ok = edit.commit(); user = pref.getString(“user”, default_user); Log.d(“SHARED WRITE”, user); Toast.makeText(this, user + ” Save process: ” + ok, Toast.LENGTH_LONG).show(); […]

我可以更改首选项文件名吗?

在我的应用程序中,我试图使用sharedPreferences来保存一些基本设置以及首选项屏幕。 我的sharedPreferences的名称是appPrefs,因此我的文件名是… / appPrefs.xml然而,我的应用程序屏幕将它的首选项保存在default.SharedPreference文件中,即com.COMPANY.PACKAGENAME_preferences.xml 我想做的是让我的首选项屏幕将其首选项读/写到appPrefs文件。 我查看了API,找不到任何东西。 我是不是要管理两个sharedPreference文件?

如何在SharedPreferences中存储Date对象?

是否可以使用SharedPreferences存储Date对象? 实际上在我的代码中我有一个Stringvariables, boolean和Date 。 这是我存储除Date之外的所有对象的函数。 那么如何做呢请建议我? private void SavePreferences() { String key=”1″; String value=”hello”; int x=5; Date currentDate=new Date(); SharedPreferences sharedPreferences = getPreferences(MODE_APPEND); SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putString(key, value); editor.putInt(“2”,5); editor.commit(); } 所以我的问题是如何使用SharedPreferences存储Date ?