Android studio 导入 Android 系统源码
1.前言
通常,从事Android开发相关的人员,都需要涉及到Android源码的阅读,尤其是从事Android系统相关开发的。这里介绍下Android studio 如何 导入Android源码,以便更好的学习开发。比较早的时候,阅读学习调试Android源码通常都是使用eclipse工具,当android studio 问世后,许多人便开始使用Androidstudio 导入源码,使用as笔者有这些优点–代码阅读比eclipse舒心,同时还可以调试相关系统进程等。
2.步骤
在导入源码之前,记得一定要正确的通过全部源码的编译。
这里笔者假设到这里,我们的源码已经全部编译完成。导入工具阅读源码这里是依靠了Android源码自带的idegen神器。
2.1 生成AS或者ES能够导入的文件,这里只讲AS
source build/envsetup.sh
mmm development/tools/idegen/
development/tools/idegen/idegen.sh
执行完上述命令后,在源码根目录会生成如下文件:
android.iml (as)(配置文件)
android.ipr (as)(导入需要的文件)
.classpath (eclipse)(导入需要的文件)
按照一般的流程,此时通过as导入android.ipr即可阅读源码了。但是因为电脑硬件配置的原因,笔者这里将剩下的步骤也写出来,供大家参考。
2.2 修改android.iml 配置包含哪些文件
用文本编辑器打开android.iml文件,找到作些修改,以下是笔者的修改excludeFolder 开头的地方,根据需要去除掉包含的文件
<excludeFolder url="file://$MODULE_DIR$/.repo" /><excludeFolder url="file://$MODULE_DIR$/abi" /><excludeFolder url="file://$MODULE_DIR$/art" /><excludeFolder url="file://$MODULE_DIR$/bionic" /><excludeFolder url="file://$MODULE_DIR$/bootable" /><excludeFolder url="file://$MODULE_DIR$/build" /><excludeFolder url="file://$MODULE_DIR$/cts" /><excludeFolder url="file://$MODULE_DIR$/dalvik" /><excludeFolder url="file://$MODULE_DIR$/developers" /><excludeFolder url="file://$MODULE_DIR$/development" /><excludeFolder url="file://$MODULE_DIR$/device" /><excludeFolder url="file://$MODULE_DIR$/docs" /><excludeFolder url="file://$MODULE_DIR$/external" /><excludeFolder url="file://$MODULE_DIR$/external/bluetooth" /><excludeFolder url="file://$MODULE_DIR$/external/chromium" /><excludeFolder url="file://$MODULE_DIR$/external/icu4c" /><excludeFolder url="file://$MODULE_DIR$/external/webkit" /><excludeFolder url="file://$MODULE_DIR$/frameworks" /><excludeFolder url="file://$MODULE_DIR$/frameworks/base/docs" /><excludeFolder url="file://$MODULE_DIR$/hardware" /><excludeFolder url="file://$MODULE_DIR$/kernel" /><excludeFolder url="file://$MODULE_DIR$/libcore" /><excludeFolder url="file://$MODULE_DIR$/libnativehelper" /><excludeFolder url="file://$MODULE_DIR$/ndk" /><excludeFolder url="file://$MODULE_DIR$/out" /><excludeFolder url="file://$MODULE_DIR$/out/eclipse" /><excludeFolder url="file://$MODULE_DIR$/out/host" /><excludeFolder url="file://$MODULE_DIR$/out/target/common/docs" /><excludeFolder url="file://$MODULE_DIR$/out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates" /><excludeFolder url="file://$MODULE_DIR$/out/target/product" /><excludeFolder url="file://$MODULE_DIR$/pdk" /><excludeFolder url="file://$MODULE_DIR$/platform_testing" /><excludeFolder url="file://$MODULE_DIR$/prebuilt" /><excludeFolder url="file://$MODULE_DIR$/prebuilts" /><excludeFolder url="file://$MODULE_DIR$/sdk" /><excludeFolder url="file://$MODULE_DIR$/shortcut-fe" /><excludeFolder url="file://$MODULE_DIR$/system" /><excludeFolder url="file://$MODULE_DIR$/toolchain" /><excludeFolder url="file://$MODULE_DIR$/tools" />
2.3 修改Android Studio的配置文件
由于导入源码时需要消耗大量内存,所以建议修改studio64.vmoptions文件:
-Xms1024m
-Xmx1024m
这里的数值1024可以根据实际情况进行调整。
2.4 打开as开始导入source code
File -> Open 选择源码目录刚刚生成的android.ipr就可以导入了,这个过程第一次是比较慢的,大家需要耐心等待。
待到源码正常导入后,还需要做一些配置。
2.5 as中配置android source code
project->Open Module Settings
先配置Sources,这里是选择将何文件夹包含进来。点击Exclude即可(和之前修改iml文件同样的效果)
然后配置SDK,选择和自己平台对应的SDK,删除除API外的全部依赖
确认保存后,记得等工程配置刷新下,也就是as下方的进度条完。就完了。
Android studio 导入 Android 系统源码相关推荐
- 【Android NDK 开发】Android Studio 的 NDK 配置 ( 源码编译配置 | 构建脚本配置 | 打包配置 | CMake 配置 | ndkBuild 配置 )
文章目录 I . 源码编译配置 II . 构建脚本配置 III . NDK 函数库打包配置 IV . Java 与 C 代码示例 V . CMake 配置 ( CMakeLists.txt ) VI ...
- Android Studio 导入 Android 系统模块并编译和调试
FAQ: AS导入系统模块源码,并且能够编译调试,正常查看java doc ???? Android AOSP基础(五)Android Studio调试系统源码的三种方式 http://liuwang ...
- android studio查看jar包源码,Android Studio查看源代码报错
我们经常用Android Studio 查看Android的源代码,今天我们就来学习查看源代码的正确姿势. Android Studio查看源代码 我们用Android Studio查看源代码会遇到下 ...
- android 10.0 在系统源码下生成jks系统签名文件
在系统开发中,会遇到在app在线升级的时候,会升级失败,由于app自己用自己的签名文件签名的 所以会和系统签名文件不一样,导致会出现一些问题 所以为了解决这一个问题 就得使用系统生成的签名文件 给ap ...
- Android Studio 导入 Android 项目
打开 Android Studio,选择 Open an Existing Project,然后选中 Android 项目的根目录即可导入 Android 项目. 如果你之前使用 Android St ...
- Android Studio导入Android源码
1.生成Android.ipr 进入项目根目录,执行 source build/envsetup.sh lunch 项目版本号 make idegen -j16 编译完成后有idegen.jar生成 ...
- android studio 中配置groovy源码_麻省理工教程:使用Unity AR Foundation在AR中查看模型...
本文将分享麻省理工学院的教程-使用Unity AR Foundation在增强现实中查看模型. 在本教程中,我们将介绍如何把3D模型导入Unity,并使用Android设备或iOS设备在AR中查看模型 ...
- 华硕Tinker Board开发板(rk3288处理器)开发 ---- 将Android Studio开发的apk源码放到Android7.1.2源码中进行编译
备注:此Android Studio项目并没有jni,没有使用动态so库,只是一个简单的项目. 1.将Android studio开发的项目移植到Android7.1.2源码中,我们只需要Androi ...
- 基于java springboot android 安卓图书借阅系统源码(毕设)
开发环境及工具: 大于等于jdk1.8,大于mysql5.5,idea(eclipse),Android Studio 技术说明: springboot mybatis html vue.js boo ...
- android studio导入android studio工程
在导入其他android studio工程的时候因为gradle和sdk.tool等版本不一样,会导致android studio自动去后台下载,导致占用硬盘越来越大,最主要的时候会等待很久,不知道要 ...
最新文章
- OSPF高级设置实现全网互通
- lua代码格式化工具_FFLUA——C++嵌入Luaamp;扩展Lua利器
- Unity中使用Attribute
- 基于VS Code创建Java command-line app
- mysql Error 1045(28000)
- Streaming API
- 【蜕变之路】第15天 Eclipse常用问题 (2019年3月5日)
- 全球最大手机公司又发年度新品:AI亮得一笔,智能音箱又晚又丑
- 硬盘的分区误删除的恢复
- 【个人笔记】OpenCV4 C++ 图像处理与视频分析 01课
- CF321E Ciel and Gondolas BZOJ 5311 贞鱼
- OPC DA 服务端搭建 (附Java 客户端代码)
- php连接mysql数据库 简洁代码
- 【算法模板】DFS秒杀模板—附练习题(阳光号启航)
- 韵达快递单号可以批量查询吗
- 31、通信卫士--拦截黑名单电话
- 微信里有人每天早上发的早报新闻是从哪里获取的?
- 【BZOJ3669】【NOI2014】魔法森林 (spfa动态队列加点算法)
- 罗斯蒙特3144PD1A1NAB4温度变送器
- JAVA json字符串格式化
热门文章
- vs2005c#能build通过,但是run不了
- iOS:Autolayout自动布局实例
- iOS学习——ViewController(六)
- 如何实现一套鼠标键盘控制二台主机
- Python之random.seed()用法
- Pyinstaller --add-data参数详解
- Lighttpd 启用 HTTPS 并重定向 HTTP 为 HTTPS 访问配置
- MyBatis解析<if>动态sql时,Integer类型值为0,返回false
- android studio程序开机启动,Android Studio中创建和启动AVD【Android】
- 交换机配置snmp及查看snmp配置信息