Articles of 共享首选项

将SharedPreferences文件保存到自定义目录或获取默认的SharedPreferences目录

是否有可能将SharedPreferences文件保存到自定义目录? 我们来看看/data/data/package.name/my_prefs/ 。 或者有可能检索SharedPreferences目录默认保存为? PS硬编码path/data/data/package.name/shared_prefs/不是解决scheme。

SharedPreferences读取旧值

我使用SharedPreferences编写,稍后在应用程序的不同活动中读取值。 它曾经工作好,但最近似乎如果没有sincronized。 我的意思是,我写了一个值,但其他活动仍然读取旧值。 有时它正确地工作。 任何想法? 编辑:这是一个示例代码: 首先从一个线索: SharedPreferences prefs = getSharedPreferences("MyPrefs", Context.MODE_PRIVATE); SharedPreferences.Editor editor = prefs.edit(); editor.putInt("ComandToDo", value); editor.commit(); … some code later: alarmmanager.set(AlarmManager.RTC_WAKEUP, Miliseconds, sender); 在警报接收器中: SharedPreferences prefs = contexto.getSharedPreferences("MyPrefs", Context.MODE_PRIVATE); int value = prefs.getInt("ComandToDo", -1); 而这里出现的问题是因为“值”不是写在线程中的值。

将Android共享首选项值从string更改为Int

我正在更新我的Android应用程序。 该应用程序从我的服务器中检索数据,其中的数据是一个用户ID。 用户ID是一个数字(整数),但是它从服务器作为一个string例如“1234”到达。 在旧版本中,我保存了这个用户id作为string在我的共享prefernces,但现在我回头看它,我不喜欢这个,并希望将它保存为一个整数,因为它应该是。 到目前为止很简单。 我只是使用putInt / getInt而不是putString / getString。 问题是,所有使用该应用程序的人都将其值作为string保存在共享首选项中,然后当他们更新应用程序时,新版本的应用程序将开始尝试使用getInt来获取旧值版本保存为一个string。 什么是避免任何错误的最好方法,并确保两个应用程序版本之间的平滑过渡? 谢谢。

SharedPreferences中的string数组

我想知道是否有可能在SharedPreferences中存储string数组 。 在我的应用程序中,我想要存储一组名称 。 我知道这可以使用DB完成,我只是想知道是否有可能将这些名称的string数组保存在SharedPreferences中 。

保存在SharedPreferences中的用户设置在重新加载应用程序之间被删除或丢失

我的应用程序在SharedPreferences存储简单的设置,它工作正常。 但是,一个人下载我的应用程序有问题。 SharedPreferences中的设置在closures和重新加载应用程序之间丢失。 他手机上的某处是否有权限问题,阻止了会话之间的数据保存? 有没有人经历过这个或知道为什么会发生这种情况? 我很难debugging它,我不知道从哪里开始。 // I'm using SharedPreferences Like so: prefs = getSharedPreferences(this.getString(R.string.prefs_name), 0); SharedPreferences.Editor editor = prefs.edit(); editor.putString("accounts", accounts); editor.commit(); //retrieving stored information like: SharedPreferences prefs = getSharedPreferences(this.getString(R.string.prefs_name), 0); String accounts = prefs.getString("accounts","[]");

如何强制PreferenceActivity处理我的SharedPreferences?

我使用SharedPreferences在我的应用程序中的所有Activities存储我的数据。 我可以像这样访问它: SharedPreferences mSharedPreferences = getSharedPreferences("MyPrefs", 0); 我已经实现了PreferenceActivity所以用户可以通过它更改值,但是它发生的事情是它读/写的数据不是“MyPrefs”,而是: PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); 这对我来说有点意外。 有可能强制PreferenceActivity处理我的“MyPrefs”首选项? 在单个应用程序中有几个偏好有什么意义? 谢谢。

Android:复制/复制SharedPreferences

有没有办法复制或复制SharedPreference? 或者我需要从一个variables中得到每个variables,然后把它们放在另一个variables中?

如何在Android |共享首选项中保存图像 在Android中与图像共享偏好问题

在我的应用程序login后,我必须保存用户名和图像共享首选其他页面。 我能够优先保存名称,但不能获取任何地方如何保存图像。 请帮帮我。 我正在尝试类似的东西 – SharedPreferences myPrefrence; String namePreferance="name"; String imagePreferance="image"; SharedPreferences.Editor editor = myPrefrence.edit(); editor.putString("namePreferance", itemNAme); editor.putString("imagePreferance", itemImagePreferance); editor.commit(); 我想将图像保存为string后,将其转换为对象。 但是当我把它重新转换成位图时,我什么也没有得到 请帮我紧急我卡住了,花了2天的时间.. 谢谢,

Android共享首选项跨不同应用程序

我一直在开发一个Android应用程序,通过一个sharedpreference文件与安装在设备上的其他应用程序进行交互。 该文件创build为MODE.WORLD_READABLE,每个已安装的应用程序都有自己的文件,其中包含一个通用的已定义的名称和属性(该特定属性的值有哪些变化)。 例如,AppA和AppB应该有一个名为“app_shared_file.xml”的共享文件,其属性为“property_shared_file”。 从我的应用程序,我想先访问这个文件,并阅读该属性值,并根据这个结果我想创build/更新我的。 不过,我在实现上遇到一些问题。 在Android文档中,我看到: 检索并保存首选项文件“name”的内容,返回一个SharedPreferences,通过它可以检索和修改其值。 只有一个SharedPreferences对象的实例返回给同一名称的任何调用者 ,这意味着他们将尽快看到对方的编辑。 读完其他应用程序共享首选项文件后,当我尝试创build/更新我的系统,而不是编辑我的系统正在使用我以前读过的。 如果恰恰相反,我开始更新我的内容,稍后阅读另一个应用程序 – 而不是阅读另一个,被访问的是我的。 有什么想法吗? 我用于阅读共享前的代码是[其中packageName是其他应用程序pckg]: Context con = context.createPackageContext(packageName, Context.CONTEXT_IGNORE_SECURITY); SharedPreferences pref = con.getSharedPreferences(SHARED_PREF_NAME, Context.MODE_WORLD_READABLE); pref.getBoolean(SHARED_PREF_PROP, false); 我用于在应用程序共享的pref中写入的代码是: SharedPreferences prefs= getSharedPreferences(SHARED_PREF_NAME, context.MODE_WORLD_READABLE); SharedPreferences.Editor editor = prefs.edit(); editor.putBoolean(SHARED_PREF_PROP, value); editor.commit(); 提前致谢。

如何确保用户select的图像重新启动Android后不会改变?

我有一个简单的贴纸小部件,允许用户在放置小部件时select其中一个贴纸。 我的问题是,一旦设备重新启动,贴纸恢复到默认的一个。 无论设备是否重新启动,如何确保用户select的贴纸保持不变? 一个例子或推动正确的方向将是非常有益的。 我不是在寻找任何人为我做这件事,只是为了教育如何去做。 谢谢。 编辑 包括代码 我不确定,但我认为我是这样做的。 我不知道如何以现在的方式整合SharedPreferences。 有人可以给我一个例子,我应该如何去做这至less与我使用的一个图像? public class SpraycanConfig extends Activity { int xawID; AppWidgetManager xawm; Context xc; EditText xinfo; //EasyTracker easyTracker; protected void onCreate(Bundle paramBundle) { super.onCreate(paramBundle); Crashlytics.start(this); setContentView(R.layout.scconfiglayout); this.xc = this; Bundle localBundle = getIntent().getExtras(); if (localBundle != null) { this.xawID = localBundle.getInt("appWidgetId", 0); } for (;;) { […]