来自 http://developer.android.com/guide/topics/fundamentals.html:
可以安排两个应用程序共享相同的Linux用户ID,在这种情况下,他们可以访问彼此的文件.为了节省系统资源,具有相同用户ID的应用程序也可以安排在同一个Linux进程中运行并共享同一个VM(应用程序也必须使用相同的证书进行签名).
我们如何为两个应用程序实现相同的用户ID?任何例子?
我想在SharedPreferences更改时更新远程服务.以下用于API级别8(Android 2.2).
我的活动有一个OnPreferencesChangedListener通过服务绑定对象调用远程服务.远程服务的接口提供了一个prefsChanged(void)由监听器调用的方法.之后,接口方法计算警报触发某些操作的新时间.此时间也保存到SharedPreferences广播并发送.我的活动收到广播,现在可以显示新的提醒时间.活动和远程服务获得SharedPreferences通过静态方法的调用对象GetPrefs(Context),回答PreferenceManager.getDefaultSharedPreferences(Context).
API级别15(Android 4.0.3)停止运行.调试显示远程服务看到其他版本的SharedPreferences持有不同的(较旧的?)值.从活动和远程服务登录时,记录SharedPreferencesImpl对象会显示不同的地址.文件系统仅显示一个共享首选项文件.
这是一个错误还是我的代码巧合地使用了API级别8?任何建议将不胜感激.