有了 AOSP 源码,接下来就是如何看了,可以直接文本看,可以用 Source Insight,我当然选择 Android Studio,Android Studio 是我熟悉且十分强大的工具。问题来了,如何将 AOSP 源码导入 Android Studio?

安装 Java

虚拟机新装的 Ubutun 一开始是没有 Java 的,需要先安装,输入命令java,报以下错误:

Command 'java' not found, but can be installed with:

sudo apt install default-jre

sudo apt install openjdk-11-jre-headless

sudo apt install openjdk-8-jre-headless

复制代码

输入以上命令进行安装,然后整编(关于整编和单编下节细讲)代码又报错:

Your version is: openjdk version "10.0.1" 2018-04-17 OpenJDK Runtime Environment (build 10.0.1+10-Ubuntu-3ubuntu1) OpenJDK 64-Bit Server VM (build 10.0.1+10-Ubuntu-3ubuntu1, mixed mode).

The required version is: "1.8.x"

复制代码

提示 Java 版本只能是 1.8.x,需要指定 Java 版本:

sudo update-alternatives --config java

复制代码

输出:

有 2 个候选项可用于替换 java (提供 /usr/bin/java)。

选择 路径 优先级 状态

------------------------------------------------------------

* 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 自动模式

1 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1101 手动模式

2 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 手动模式

要维持当前值[*]请按,或者键入选择的编号:2

复制代码

拓展

JDK 也有门派之分的,那就是 Open JDK 和 Oacle JDK,其实我刚开编译时,用的是 Oracle JDK,整编报错:

You asked for an OpenJDK based build but your version is

java version "1.8.0_181" Java(TM) SE Runtime Environment (build 1.8.0_181-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode).

复制代码

idegen.jar

在 Ubuntu 系统下,进入源码根目录,运行如下命令:

source build/envsetup.sh

mmm development/tools/idegen/

复制代码

报错:

Command 'make' not found, but can be installed with:

sudo apt install make

sudo apt install make-guile

复制代码

命令安装 make 成功后,再次运行mmm development/tools/idegen/,会在源码目录下的 out/host/linux-x86/framework目录下生成了 idegen.jar 文件。

如果命令 mmm development/tools/idegen/ 一直报错,可以尝试一下命令 make idegen 依赖编译下。

android.iml 和 android.ipr

在源码目录下继续执行如下命令:

development/tools/idegen/idegen.sh

复制代码

会在根目录下生成

android.iml 和 android.ipr 这两个文件,这两个文件是 Android Studio 的工程配置文件,这时候其实已经可以直接导入 Android Studio,但会导入所有的源码模块,会很慢,可以进行过滤,除了 frameworks 模块和 packages 模块,其他都给过滤掉,不导入 Android Studio,打开 android.iml 文件,搜下excludeFolder,在后面加入如下代码:

复制代码

导入 Android Studio

我把 Android 源码拷到我的 Mac 上,打开 Android Studio,选择 Open an existing Android Studio project,找到源码目录,点击 Android.ipr,Open,大约等 6 分钟,导入完毕,Enjoy coding。

问题

发现 Android Studio 不停 scanning files to index,我的强迫症又犯了,解决:

1 invalidate and restart 不起作用;

2 右击项目 --> Open module setting --> Modules --> 找到 gen 文件夹 --> 右键选择 Resources,终于告别烦人的 scanning files to index。

系列博客

参考

公众号

我的公众号:吴小龙同学,欢迎交流~

android studio im源码,Android Studio 导入 AOSP 源码相关推荐

  1. Android Studio 导入 AOSP 源码

    有了 AOSP 源码,接下来就是如何看了,可以直接文本看,可以用 Source Insight,我当然选择 Android Studio,Android Studio 是我熟悉且十分强大的工具.问题来 ...

  2. Android Studio 导入 AOSP 源码 1

    有了 AOSP 源码,接下来就是如何看了,可以直接文本看,可以用 Source Insight,我当然选择 Android Studio,Android Studio 是我熟悉且十分强大的工具.问题来 ...

  3. 使用Android Studio调试安卓系统源代码:将AOSP源码整体导入到AS

    文章目录 前言 一.编译AOSP源码 二.编译AS工程文件 1. 编译命令 2.工程文件列表 三.加大AS内存 四.配置AS工程文件 1. 修改 android.iml 2. 导入AS工程文件 五.在 ...

  4. 一步一步教你如何在AndroidStudio查看Android源码(AOSP源码)

    一步一步教你如何在AndroidStudio查看Android源码(AOSP源码) idegen工具 要将Android系统源代码工程导入到Eclipse或者IntelliJ IDEA,关键是要有相应 ...

  5. <漫漫Android路>AOSP源码获取编译及问题处理

    漫漫Android路---1.AOSP源码获取编译及导入 写在前面 环境准备 AOSP源码获取 1.Repo下载配置 2.Git安装及配置 3.AOSP获取 AOSP源码编译 1.安装编译依赖 2.开 ...

  6. 安卓系统AOSP源码修改入门

    先整理 后学习 再总结 编译 版本查询 设备代号 驱动下载 精简编译教程 索尼编译巨详细教程 源码阅读 anroid studio 导入aosp 源码 源码结构 源码修改 内置证书抓包 默认打开ADB ...

  7. android 7.0 连接电脑,Android 7.0:有人欢喜有人愁

    不知道大家安卓手机的系统版本是多少?老迈的Android 4.x.主流的Android 5.x还是较新的Android 6.x呢?告诉你一个不幸的消息吧,大家的手机马上就要落伍了. 这里的落伍可不是说 ...

  8. 【BLE MIDI】推荐一个 Android 平台开源 MIDI 软件 MidiSheetMusic ( 相关资料 | Android Studio 中导入 Eclipse 源码 )

    文章目录 一. MidiSheetMusic 相关资料 二. Android Studio 中导入 MidiSheetMusic 的 Eclipse 源码 一. MidiSheetMusic 相关资料 ...

  9. 使用Android Studio导入安卓源码

    1 背景 这篇文章主要说明的是用它来看源码的相关配置(该实例依据官方源码进行配置说明).在android源码中发现有一个development/tools/idegen目录,查了一下发现是生成IDE的 ...

最新文章

  1. DataReader和DataSet区别
  2. spark 朴素贝叶斯
  3. python 文字语音朗读-教你用 Python 来朗读网页
  4. 数据结构Java02【栈、队列、单链表(增删节点)、循环链表、双向循环链表、递归(斐波那契、汉诺塔)】
  5. C++ OpenGL透明纹理源码
  6. android string.xml中%1$s、%1$d等的用法
  7. 视频直播:实时数据可视化分析
  8. 用计算机处理信息教学反思,《人工智能处理信息》教学反思
  9. 【转】Windows Server2008 R2下安装Oracle 10g
  10. OpenVDB Download
  11. Codeforces Round #197 (Div. 2): D. Xenia and Bit Operations(线段树)
  12. MY_0001:添加命令到自定义工具栏
  13. 10.TCP/IP 详解卷1 --- 动态选路协议
  14. 【电力电子】功率因素\无功功率
  15. oracle odbc 数据源管理器 配置,ODBC管理器设置SQL server 数据源
  16. cwRsync-windows下的rsync工具
  17. linux通过top和iostat查找io性能瓶颈
  18. 中国莽草酸行业市场深度调查报告(2022版)
  19. 干货!基于语义生成概率的无监督常识问答方法——清华CoAI小组牛艺霖
  20. 170716 网线接口顺序

热门文章

  1. 定点数(fixed-point number)的运算
  2. 【概率论与数理统计02】那些年,正态分布、指数分布、伽马分布、卡方分布之间的发生的那些事儿(下)
  3. 领域驱动设计战术模式:实体
  4. 阴阳师痒痒鼠挖土魂十python----最简单版本
  5. Python使用pymongo连接MongoDB数据库并进行操作
  6. html流星雨页面,纯CSS流星雨背景的示例代码
  7. android 电话接通时震动
  8. PCI设备与PCI桥的配置空间
  9. jsp向服务器上传文件,jsp ftp 上传文件到服务器
  10. linux下运行的游戏(持续更新中)