AIDL之android接口语言第一篇通信

来源:互联网 发布:win10软件分辨率不正常 编辑:程序博客网 时间:2024/05/17 01:46

  今天,是我第一次在博客里面发表文章。我接触android只有两个月。今天通过自学学习了AIDL的一些知识。在此分享给大家,如果哪些地方有错误,希望大家给予点评,我将继续同大家一起共同努力!

    好了,言归正传!

    首先,我们要知道AIDL是什么。以我自己的理解,无非就是两个进程之间通信的桥梁。我们知道,应用程序之间是不能直接进行通信的,那么我们就有了AIDL android接口定义语言。

    但是AIDL不能再程序中,一看见两个程序之间就行通信就拿来使用。因为那肯定是不明智的。AIDL适用于多个应用程序,多个线程的这种条件中。官方文件中也提出,Binder和Message是不适合多线程的。

   我们可以通过两种方式实现将AIDL生成java文件,一个是通过黑窗口命令行。一个就是通过eclipse自动生成。目前,我还没学会android studio。

   1、首先找到androidSDK中build_tools文件,看见里面会有一个xx.aidl文件。复制目录,并配置Path

   2、在黑窗口中点击aidl,会出现许多命令行,那就说明配置成功。

   3、新建一个txt记事本,在里面写入代码,如下图所见。最后,将记事本后缀名改成aidl即可。注意:在写文件包名时候,文件最后也放在这个目录下面,复制路径

4、打击黑窗口,进入到上面的目录里面,点击aidl IRemoteService.aidl,你会惊奇的发现,在这个目录下面会自动生成一javawenjian


第二种,在eclipse里面直接新建一个File文件,里面还是写入aidl里面的内容,注意更改文件后缀名。点击保存后,会在gen目录下自动生成一个java文件

具体如何使用呢?

一个项目的服务器端,只做逻辑处理



新建一个项目

  第一步:将上一个项目中的aidl拷贝在项目中即可

  第二步:首先在启动Activity的时候,就要启动这个服务,最后,要重写里面的两个方法,连接的时候,断开的时候

调用方法


销毁



完成!!这就实现了两个进程之间的通信!希望能够看懂这个思路。。第一次发,可能有点不是很通顺!

0 0
原创粉丝点击