zoukankan      html  css  js  c++  java
  • 什么是AIDL(转)

    跨进程访问的服务称为AIDL(Android Interface Definition Language)服务。

    AIDL:Android Interface Definition Language,即Android接口定义语言。

    什么是AIDL

    Android系统中的进程之间不能共享内存,因此,需要提供一些机制在不同进程之间进行数据通信。 为了使其他的应用程序也可以访问本应用程序提供的服务,Android系统采用了远程过程调用(Remote Procedure Call,RPC)方式来实现。与很多其他的基于RPC的解决方案一样,Android使用一种接口定义语言(Interface Definition Language,IDL)来公开服务的接口。我们知道4个Android应用程序组件中的3个(Activity、BroadcastReceiver和ContentProvider)都可以进行跨进程访问,另外一个Android应用程序组件Service同样可以。因此,可以将这种可以跨进程访问的服务称为AIDL(Android Interface Definition Language)服务。

    建立AIDL服务要比建立普通的服务复杂一些,具体步骤如下:

    (1)在Eclipse Android工程的Java包目录中建立一个扩展名为aidl的文件。该文件的语法类似于Java代码,但会稍有不同。

    (2)如果aidl文件的内容是正确的,ADT会自动生成一个Java接口文件(*.java)。

    (3)建立一个服务类(Service的子类)。

    (4)实现由aidl文件生成的Java接口。

    (5)在AndroidManifest.xml文件中配置AIDL服务,尤其要注意的是,<action>标签中android:name的属性值就是客户端要引用该服务的ID,也就是Intent类的参数值。

    转自

  • 相关阅读:
    Account group in ERP and its mapping relationship with CRM partner group
    错误消息Number not in interval XXX when downloading
    错误消息Form of address 0001 not designated for organization
    Algorithm类介绍(core)
    梯度下降与随机梯度下降
    反思
    绘图: matplotlib核心剖析
    ORB
    SIFT
    Harris角点
  • 原文地址:https://www.cnblogs.com/YangBinChina/p/4073580.html
Copyright © 2011-2022 走看看