使用来自服务的共享偏好

0 service android sharedpreferences

我正在尝试使用服务调用的线程中的sharedpreferences:

SharedPreferences startPref = PreferenceManager.getDefaultSharedPreferences(context);
            //SharedPreferences startPref = context.getSharedPreferences("MyPref", 0);
            startPref.edit().putString("REFRESHED", when);
            startPref.edit().commit();
            System.out.println("Time put " + when);
            System.out.println("Got time " + startPref.getString("REFRESHED", "WRONG"));
Run Code Online (Sandbox Code Playgroud)

我尝试在那里放一些字符串,然后取回它,但我总是得到错误的错误消息.我试图使用startPref初始化的两种变体:注释而不是,两者都不起作用.

上下文是服务的上下文.

laa*_*lto 5

更改

startPref.edit().putString("REFRESHED", when);
startPref.edit().commit();
Run Code Online (Sandbox Code Playgroud)

startPref.edit().putString("REFRESHED", when).commit();
Run Code Online (Sandbox Code Playgroud)

每次调用edit()都会创建一个新SharedPreferences.Editor实例.因此,您将在一个中保留未更改的更改,并在另一个编辑器中不进行任何更改.