如何阅读Android应用层源代码

当阅读android原生的应用层源代码时,当遇到不理解的API时,如果仅凭将API函数放到google的官方API网页中去搜索的话,不一定合适,可以用eclipse先搜到该函数的定义处,看属于哪个类,然后再在google的官方API网页中搜该类,然后找到这个方法,如果该方法还是没在该类中,那么可以用eclipse找找该方法是不是继承与其子类,再从子类中搜搜。


构建开发环境

1、  构建Android编译环境:

Ubuntu11.10-64bit系统、一系列编译库、JDKAndroid SDKEclipse +ADT

 

2、  Android官方原生Android代码。

 

3、  源代码根目录下:

 

source build/envsetup.sh

lunch full-eng

make  –j4

123相关内容在http://source.android.com/source/index.html都有相关说明。

 

4、  编译Android源码的同时,可以建立Android源代码Java工程

(1)将源码目录\development\ide\eclipse 中的.classpath复制到源码根目录下。
(2)更改eclipse缓存设置
    eclipse安装根目录下修改eclipse.ini   
    -Xms128m

    -Xmx512m
    -XX:MaxPermSize=256m
(3) 源码目录\development\ide\eclipse 中的android-formatting.xmlandroid.importorder导入eclipse
    android-formatting.xml用来配置eclipse编辑器的代码风格;android.importorder用来配置eclipseimport的顺序和结构。

window->preferences->java->Code style->Formatter中导入android-formatting.xml
    window->preferences->java->Code style->Organize Imports中导入android.importorder
(4)导入源码
   最好重新换一个workspace,因为源码是比较庞大的。新建Java Project,指定一个name,接着将use default location勾掉,指定到你源码的目录下,完成。

如果导入过程中依然出现空间不够用的错误提示,根据(2)中设置,把缓存各项设置的更大一些。

 

5、  编译源码完成后,运行命令,启动Android模拟器:

export imgpath=/home/android4.2_PureCode/out/target/product/generic

cd /home/Ubuntu_android_env/adt-bundle-linux-x86_64-20130219/sdk/tools

emulator –system $imgpath/system.img –data$imgpath/userdata.img –ramdisk $imgpath/ramdisk.img

 

6、  启动自己编译的android镜像的方法,android源码根目录下:

source /build/envsetup.sh

lunch 1

emulator

 

7、  首先点击右上角的DDMS,在左侧选中要调试应用程序,如果高亮处于第一栏“<build>[emulator-554]”上,再接下的操作中会出现“Launchingandroid_pure has encountered a problem.Fail to connect to remote VM”的错误。然后点击右上角的Java,在eclipse中的工具栏有一个图标为绿色小虫子的右侧下拉框中选中“Debug Configurations…”,在出现的对话框中的“Remote Java Application”右击选中“New”,在Project中选android源码的工程,选中“Allowtermination of remote VM”,设置端口号为8700,然后点“Apply”,最后点“Debug”,稍等片刻出现标题为“Errors in workspace”的消息框,这是因为在android源码工程中存在错误,不用管,点“Proceed”。点击右上角的“Debug”(如果没有这个按钮,就在左上角的小方框“Open Perspective”中有Debug按钮),如果连接成功的话,会在左侧出现“DalvikVM[localhost:8700]”,其下方是一系列的Thread信息。如果想断开,则选中上述“DalvikVM[localhost:8700]”,右击选择Disconnect即可。如果重新调试,请重复上述过程。

请注意:首先点击右上角的DDMS,在左侧选中要调试应用程序,如果高亮处于第一栏“<build>[emulator-554]”上,再接下的操作中会出现“Launching android_pure has encountered aproblem.Fail to connect to remote VM”的错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值