Articles of 共享偏好

如何使用SharedPreferences

我是Android开发的新手 – 在24小时内使用一本名为Sams Teach Yourself Android Application Development的书。 到目前为止跟着它,但试图使用SharedPreferences卡住了。 在文件夹src / com.androidbook.triviaquiz中,我有一个名为QuizActivity的文件,其中包含以下内容: package com.androidbook.triviaquiz; import android.app.Activity; import android.os.Bundle; import android.content.SharedPreferences; public class QuizActivity extends Activity { public static final String GAME_PREFERENCES = “GamePrefs”; SharedPreferences settings = getSharedPreferences(GAME_PREFERENCES, MODE_PRIVATE); SharedPreferences.Editor prefEditor = settings.edit(); prefEditor.putString(“UserName”, “JaneDoe”); prefEditor.putInt(“UserAge”, 22); prefEditor.commit(); } 这是本书告诉我使用的内容,但它在以下几点返回错误:在“。”下面。 在前两个prefEditor语句之后,在(“UserAge”,22)下的(“UserName”,“JaneDoe”)下; 并在“提交”下 我已经在大量网站上寻求帮助,但似乎都使用相同的代码。 我究竟做错了什么?

SharedPreferences不起作用 – getString始终返回默认值

我在Android中的SharedPreferences有问题。 这是我的代码: SharedPreferences s = this.getSharedPreferences(“kurs”,MODE_WORLD_READABLE); s.edit().putString(“eur”, “1.80”); s.edit().commit(); SharedPreferences a = this.getSharedPreferences(“kurs”,MODE_WORLD_READABLE); String kurs = a.getString(“eur”,”7″); Toast hhh= Toast.makeText(getApplicationContext(),kurs, Toast.LENGTH_LONG); hhh.show(); 我在设置String并希望在onCreate方法之后直接读出它。 但我总是得到指定的默认值“7”。 什么问题? 我已经研究过这个问题,但我找不到有用的东西。 谢谢你的帮助 :)

共享首选项或内部文件存储 – 任何内存问题?

我想知道哪个更适合存储目的:共享首选项或内部文件存储。 哪个更快? 他们中的任何人都有任何记忆问题吗? 谢谢,

SharedPreferences和PreferenceFragment

我已经在ANdroid开发者网站上完成了PreferenceFragments和SharedPreferences的示例,但是我现在遇到了一个问题。 我希望能够从不同的活动中访问“设置”屏幕中的首选项,但我不知道我的首选项片段生成的首选项文件的名称是什么。 有没有人知道为PreferenceFragment指定首选项文件名?

删除共享首选项键/值对

我将一些付款值存储在一个活动中 SharedPreferences spreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); productId = spreferences.getString(“productId”, “”); purchaseToken = spreferences.getString(“purchaseToken”, “”); orderId = spreferences.getString(“orderId”, “”); 现在我在另一个中检索它们 SharedPreferences spreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); productId = spreferences.getString(“productId”, “”); purchaseToken = spreferences.getString(“purchaseToken”, “”); orderId = spreferences.getString(“orderId”, “”); 我的问题是在检索它们后在第二个Activity中删除它们。谢谢。

SharedPreferences不会节省价值

我有这个代码: public class Register extends Activity { private LinearLayout layout; private TextView debug; public static final String USER_CONFIG = “UserConfigs”; @Override public void onCreate (Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.register); SharedPreferences settings = getSharedPreferences(USER_CONFIG, MODE_PRIVATE); boolean registered = settings.getBoolean(“registered”, false); layout = (LinearLayout) findViewById(R.id.layoutRegister); if (!registered) { debug = new TextView(this); debug.setText(“You have to register”); layout.addView […]

我想清除共享偏好的价值

我已将用户名和密码存储在共享首选项中。 我在欢迎“用户名”等每个活动中显示用户名。 但是在注销时我在对话框中放了一个checkbox。如果选中该checkbox,则应该清除共享偏好值。 所以我不知道怎么做。请帮助我。 谢谢。

Update / Uninstall上的SharedPreferences行为

我使用共享首选项来存储我的应用程序启动的次数。 只有在第一次启动时,我才会显示一条欢迎消息,告诉用户该版本中的新function和更改。 但是当我专注于重新安装应用程序或升级应用程序时,我无法删除以前的共享首选项。 我想在重新安装软件或升级它时获得对话框。 AppLauncher public class AppLauncher { static long launch_count = 0; private static boolean isLaunch = false; public static void app_launched(Context mContext) { System.out.println(“I m in AppLauncher”); SharedPreferences prefs = mContext.getSharedPreferences(“apprater”, 0); if (prefs.getBoolean(“dontshowagain”, false)) { return; } SharedPreferences.Editor editor = prefs.edit(); // Increment launch counter launch_count = prefs.getLong(“launch_count”, 0); editor.putLong(“launch_count”, launch_count); […]

从文件恢复时如何刷新android中的SharedPreferences?

我将SharedPreferences xml文件从文件备份到SD卡 File taskExceptionFile = new File(Environment.getDataDirectory() + “/data/” + packageName + “/shared_prefs/” + TaskAction.SHARED_PREF_TITLE_TASK_EXCEPTION + “.xml”); 但是,当我恢复文件时,如果该文件已被打开 SharedPreferences sp = context.getSharedPreferences(TaskAction.SHARED_PREF_TITLE_TASK_EXCEPTION, 0); 在恢复之前,SharedPreferences似乎有一个缓存,我使用Root Explorer在恢复后查看文件,这些值确实是来自备份文件的值,但是当我使用时 sp.getInt(TaskAction.SHARED_PREF_TASK, 0) 要获取值,该值不是备份文件中的新值,它返回默认值0.我强制停止我的应用程序,然后重新输入我的应用程序,值是新值。 所以,我想问一下当我恢复文件时如何立即刷新SharedPreferences,以便我可以获得新值? 抱歉我的英语不好~~~

从自定义DialogPreference保存到SharedPreferences

我目前有一个首选项屏幕,我已经创建了一个扩展DialogPreference的自定义类,并从我的首选项中调用。 我的首选项数据似乎从SharedPreferences存储/检索没有问题,但我正在尝试从DialogPreference添加另外两组设置。 基本上我有两个我无法find的问题。 我见过的每个网站都给了我相同的标准信息来保存/恢复数据,我仍然遇到问题。 首先,我正在尝试将用户名和密码保存到我的SharedPreferences (在最后一段代码中可见),如果可能的话,我希望能够在onClick() 。 我的首选项XML调用我的DialogPreference : 我的自定义DialogPreference类文件: package com.rone.optusmon; import android.content.Context; import android.content.DialogInterface; import android.content.SharedPreferences; import android.preference.DialogPreference; import android.preference.PreferenceManager; import android.text.method.PasswordTransformationMethod; import android.util.AttributeSet; import android.view.View; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.EditText; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; public class AccDialog extends DialogPreference implements DialogInterface.OnClickListener { private TextView mUsername, mPassword; private […]