2011-11-03 65 views
0

我有一组偏好,我希望在我的应用程序中的过程之间共享。不过,android目前不支持。我读过,你可以使用同步,但我不能找到这样的例子。那么最好的解决办法是什么?也许有一种我不知道的方式。提前致谢。SharedPreferences与数据库vs JSON

+0

你是说你有多个应用程序共享偏好设置,或者只有一个创建不同进程的应用程序? –

回答

1

看一看这篇文章(阅读和写作的同时。):

When should I use each of Android's different messaging types?

我也通常使用意图的一些基本的沟通。如果您传递大量数据,则使用文件系统或套接字。

我希望这会有所帮助。

+0

是的,我已经阅读过这篇文章。我目前正在使用意图更新服务设置。只是不确定是否可能有一种我不想知道的方式。谢谢。 – jjNford

0

您确定您正在运行单独的进程吗?单独的进程在单独的JVM中运行,需要特别配置才能发生:请参阅Processes and Threads

由于进程在单独的JVM中运行,因此不能通过普通Java对象简单共享数据(并使用​​同步访问)。只有在运行多个线程时才能执行此操作,这些线程在同一个JVM中运行。

您可以在进程间使用Inter Process Communication共享数据。

当然,您也可以通过共享首选项或文件共享数据,但这不会通知其他进程有关新数据,因此您很难称之为“通信”。而且,这种方法有同步问题

+0

是的,我在单独的进程中,因为这些服务保持活跃(应用程序有2个)的重要性,它们必须运行在单独的进程中(如Manifest中所定义的)。我了解IPC和AIDL,但只是检查是否有隐藏的东西,我没有意识到。非常感谢 – jjNford