如何把android framework源代码加入SDK

  开发、调试Android程序的时候有时候需要看一下android sdk的源代码,并实时断点查看变量,Goolge在发布SDK时没有把源代码包含进去着实有点让人费解,对很多人来说 Git无疑是个生涩的东西,而 framework中所有Java代码加起来打个包也就是20多MB。更要命的是,Android Eclipse plugin (ADT)不允许我们在项目属性中attach源代码到android.jar上。好在Eric Burke找到了把source加入到SDK中的办法 ,通过分析ADT的源代码我们知道ADT是从SDK目录下的“sources” 目录来查找class对应的源代码,这样我们只要把源代码放到sources目录中ADT就可以自动找到对应的源代码了。 


 下载源代码后,在/android-sdk-windows/platforms/android-xx下新建一个sources目录,将源文件放在sources目录下,然后在编写的android的class中就可以看到引用文件的源代码了, 如下所示:

SDK_PATH

  | android.jar

  +--docs/...

  +--samples/...

  +--sources

       +--android

       |      ...accounts, annotation, app, bluetooth, etc...

       +--com/android/etc...

       +--dalvik/...

       +--java/...

       +--javax/...


  其实我们并不需要所有Android的源代码。比方说我们把Binder相关的文件copy到sources/android/os目录下。我们使用ADT调试的时候就可以直接看到Binder的源代码.

增加sources目录后记得重新启动Eclipse! 有时通过某个项目点右键,运行debug as/android application,调试APP时,可查看framework class的源码。
本文章参考 http://mcuos.com/thread-4552-1-1.html, 并作修改。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
阅读Android源代码是一个复杂且庞大的任务,但以下步骤可以帮助你开始: 1. 下载源代码:首先,你需要下载Android源代码。你可以从Android开源项目(AOSP)网站获取最新的Android源代码。根据你的需求,选择并下载相应的代码库。 2. 设置开发环境:在阅读Android源代码之前,确保你已经设置好了开发环境。这包括安装Java开发工具、Android SDK和相关的开发工具链。确保你能够编译和构建源代码。 3. 确定学习目标:由于Android源代码非常庞大,你可能无法一次性阅读完整个代码库。因此,建议先确定你的学习目标。你可以选择阅读特定模块或功能的实现,或者专注于某个特定版本的Android。 4. 阅读文档:Android源代码附带了一些文档,如API文档、开发者指南等。阅读这些文档可以帮助你理解源代码的结构和使用方式。 5. 选择关键模块:Android源代码中有许多关键的模块,如Framework层、系统服务、应用程序等。你可以选择其中一个模块作为起点,逐步深入学习和理解。 6. 阅读源代码和注释:Android源代码中包含了大量的注释,这些注释对于理解代码逻辑和实现细节非常有帮助。同时,你也可以通过阅读源代码来了解Android的设计和实现方式。 7. 调试和运行代码:在阅读源代码的过程中,你可以使用调试工具来跟踪代码执行过程,帮助你理解代码的工作原理。你还可以尝试编译和运行一些简单的代码,验证你对源代码的理解。 8. 参考其他资源:除了Android源代码本身,还有一些优秀的开源项目、书籍和在线教程可以作为辅助学习资源。你可以参考这些资源,加深对Android源代码的理解。 需要注意的是,阅读Android源代码需要一定的编程经验和知识基础,并且需要花费一定的时间和精力。建议在开始之前,先确保你有足够的时间和兴趣去深入学习。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值