当前位置: 代码迷 >> Android >> AIDL和Service有什么区别?解决方法
  详细解决方案

AIDL和Service有什么区别?解决方法

热度:62   发布时间:2016-05-01 22:10:08.0
AIDL和Service有什么区别?
最近在研究android的通讯机制,关于android的通讯有个AIDL,这个是进程间的通信,我看了下别人的代码,发现AIDL里面也定义了一个继承自Service的类,我有以下两个问题:

  1.AIDL必须要建立一个继承自Service的类么
  2.AIDL建立的这个Service类和android本身的Service有什么区别,我们直接使用Activity调用Service也可以啊,为什么还要使用AIDL呢

  其实本人对AIDL的使用场景和好处不太清楚,望高人解答下。。。



------解决方案--------------------
我也只是了解皮毛,Service分为本地服务和远程服务,远程服务就一定要用到AIDL技术实现,因为android的不同应用是在不同的进程中运行的,也是彼此独立的,如果在一个应用中访问另一个应用,也就是调用远程服务,就要把服务端定义的AIDL文件放到客户端,这样才可以实现远程服务调用。我也只知道这么多,希望对你有帮助。
------解决方案--------------------
我也只用了service,至于那个AIDL我看到别人用过,不过我也不知道有啥优势。
------解决方案--------------------
复用性比较好吧,多个应用都可以用
------解决方案--------------------
AIDL机制就是处理客户端和服务端的通信,通过AIDL机制,客户端通过调用服务端提供的接口
便于跨进程调用其他应用程序。。。

如果你的应用程序不涉及其他应用时,没有必要使用AIDL机制
  相关解决方案