从服务中获得SharedPreferences(get SharedPreferences from

2019-06-26 02:58发布

我试图从服务访问共享偏好。 我已经使用了以下文字的值保存到一个字符串...

SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("Ignore1_value", Example.getText().toString());
editor.commit();

但是,我怎么会得到一个服务的价值? 一切我已经尝试返回如无物。 任何帮助将是完美的,并大加赞赏?

我通过一些其他的问题,看上去也无解。 我已经想出了这一点,但就像我说的,它返回它,因为没有文字。

Context ctx = getApplicationContext();
    SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(ctx);
    String example1string = sharedPreferences.getString("Ignore1_value","");
    Log.i("**GetSettings", example1string);

Answer 1:

我一直在使用PreferenceManager.getDefaultSharedPreferences(context) 。 这是所有同一Context中的应用程序S。

一个Service是一个Context本身,所以这个就足够了:

PreferenceManager.getDefaultSharedPreferences(this);


文章来源: get SharedPreferences from a service