IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Android Studio 查看Framework源码(AOSP) -> 正文阅读

[移动开发]Android Studio 查看Framework源码(AOSP)

前言:

?????? 工欲善其事必先利其器,一套合适的开发工具可以有效的提高工作效率,作为一个懒惰的码农,为了舒舒服服的偷懒了,我试过很多工具,在AOSP我认为效率最高的工具非Vim莫属,Vim+Ctag+grep的组合,效率还是可以的,但是它们也有很多缺点,经常跳转出错,跟踪复杂的代码经常迷路,于是我就转战使用VS,丰富的插件让我眼花缭乱,Source Insight也是个强大的工具,但是在Ubuntu上需要装win虚拟机,并且出现不明所以的卡顿,最终我还是放弃了它,专情与AS,以下为本人使用AS的设置记录,仅供参考:

参考博客:

https://blog.csdn.net/u011578734/article/details/108339776

环境:

?????? Android studio for Ubuntu20.0.04

工具:

idegen工具

要将Android系统源代码工程导入到Eclipse或者IntelliJ IDEA,关键是要有相应的工程配置文件。

????????idegen专门为IDE环境调试源码而设计的工具,idegen可以用来生成针对Eclipse和IntelliJ IDEA的Android系统源代码工程配置文件,它位于Android系统源代码工程目录的下列位置:

AS中导入AOSP源码

将工程导入AS需要下面三个步骤:

1.获取到idegen.jar

2.获取idegen.sh 执行生成android.ipr/android.iml

3.Android sutdio 选择android.ipr导入

生成android.ipr等文件

执行下面的命令即可生成android.ipr等文件:

cd ~/aosp //具体的源码根目录

source build/envsetup.sh //用于初始化环境变量

lunch aosp_arm64-eng

mmm development/tools/idegen/? //生成文件out/host/linux-x86/framework/idegen.jar

./development/tools/idegen/idegen.sh//源码根目录生成文件android.ipr(工程相关设置), android.iml(模块相关配置)

导入AndroidStudio

打开AS,点击File -> Open,选中前面生成的android.ipr文件即可,该过程比较耗时。

android.iml文件

????????iml文件是idea组织工程的文件, 里面记录了各种记录模块, 文件夹以及依赖的信息。一般而言, 创建的工程都会有这个文件, 它的本质是一个工程组织文件, 和Maven的pom.xml, gradle的build.gradle, 等组织工程和处理依赖关系的文件并没有什么差别。

打开android.iml文件,我们会发现这个而文件配置项非常多,主要有类标签:

sourceFolder:表示包含的文件目录,通常我们只需要留下framewrok即可。

excludeFolder:exclude顾名思义就是不包含的意思。我们有很多目录直接就不想让Studio去管它,不管是索引还是什么等等,所以只需要将这些目录配置到中就好了。

如果已经把全部项目导入到Android Studio,又想删除怎么办,其实有一个简单的方法就是进入目录Project Structure -> Modules, 可快速去除某些模块, 其中红色代码Exclueded选项(即代表已删除的目录),我们只查看framework模块,所以其他模块的代码全部设置为 Exclueded,如下图:

AS中关联源码,实现代码跳转

android.ipr导入AS之后,等待一段时间项目构建过程。按默认配置即可,但是在配置完成后,AS运行一直很慢,而且还会出现卡顿,出现低内存的警报,经过排查发现是AS加载git的过程中一直再过度使用内存,因此我们需要在两方面进行修改

1.取消加载git,采取手动同步代码的方式sync代码,如下图:

2.加大AS运行内存

经过上述设置,使用AS查看framework源码就变的相当轻松了。

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-11-23 12:28:54  更:2021-11-23 12:31:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 5:29:04-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码