我对来自不同人和开发者网站的不同意见感到相当困惑……
我正在构建一个应用程序,其中我有一个服务(本地服务)运行...它会不断更新数据(套接字)。我希望每次都能在活动中得到反映。
以下哪种方法是最理想的?
发布于 2011-03-16 13:08:03
我认为binder会更好,因为messenger或aidl的目标是跨进程通信。
发布于 2013-10-23 09:03:48
首先,Binder无法与AIDL相比。它们是完全不同的东西。Binder是Android中使用的一种IPC机制;而AIDL,顾名思义,就是Android Interface Definition Language,与您可能使用过的其他AIDL类似。AIDL允许您定义客户端和服务都同意的编程接口,以便使用绑定器彼此通信。然而,应用程序开发人员并不直接使用绑定器。相反,它们必须使用AIDL定义接口并与之交互。
所以,你的问题变成了“我应该使用Messager还是Binder?”--我的理解是: Binder用于进程间通信;Messager可以用于不需要多线程的情况下的内部和内部。因此,这取决于您所处理的场景。
发布于 2011-07-21 15:42:13
我认为binder和aidl是一样的。您必须首先创建一个.aidl文件,然后在活动和服务之间绑定该文件。然后,.aidl文件将作为活动和服务之间的接口工作。
Messenger是另一种方式。
https://stackoverflow.com/questions/5321137
复制相似问题