我尝试实现的代码包括一个服务和一个应用程序。 当应用程序首次启动时,它使用 startService(svc_name) 调用。这里的 svc name 是一个指向 运行服务的类。
我想在服务之间共享资源(文件/套接字连接) 和应用程序。例如,一个写入文件,另一个读取 从中。我无法在服务和应用程序之间获得正确的同步。
能否请您告诉我这是如何实现的? 提前致谢。
最佳答案
如果您的应用和服务是两个独立的应用程序(不同的 .apk 文件),您可以考虑使用 aidl。 aidl 允许您跨进程发送和接收消息。
但是,如果您的应用程序( Activity )和服务共享相同的进程(相同的 .apk 文件),那么您可以使用 SharedPreference 或静态成员。 SharedPreference 可供应用程序的所有线程访问,并且在运行之间保持不变。
http://developer.android.com/reference/android/content/SharedPreferences.html
不过它只能处理简单的类型,例如 Boolean、Integer、Long、Float 和 String。
关于android - android中的服务和应用程序之间共享资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2326146/