本来笔者打算写一下adb源码分析的文章,后来发现网上已经有人写了关于adb源码通信和各种机制的文正了,写的挺好的,理解的也比笔者要深刻,所以笔者就不在重复造轮子了。
但是前面的编写者,主要是从源码角度来理解,但是对于很多程序员来说,细读一遍源码,绝对没有在ide中断点跟踪一遍程序理解深刻过瘾。所以我将adb源码从android源码中提取出来,支持了ndk编译,以及eclipse下的 cdt编译。
这样既能编译出来在pc端的 android称为host,adb命令,也能编译出来运行在 手机端 android称为 target,adbd命令,需要放在 /sbin/目录下
注:其实很多pc上的手机助手都是提取了android的adb源码,再做适配操作系统的ui界面,比如用mfc做windows下的手机助手。
由于最近比较忙,所以就偷了懒,不分析如何从android源码提取adb代码了,等有时间再补上...
前置条件:
1 系统要求 ubuntu 13.04
2 源码提取 gingerbread 2.3.7 版本
在windows下提取最新版本的adb源码意义更大。毕竟很多pc上的手机助手都是在windows下的,但主要是个demo,就懒得这样做了。
下面截取两张图
编译工程,要求eclipse + cdt
提取的目录途径,ubuntu下的环境。
jni目下直接可以使用 ndk-build 来编译target的adbd文件
第一个adb目录下,直接可以导入ubuntu下的eclispe的
附件
转载于:https://blog.51cto.com/sunzeduo/1402637