前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Build Android Studio Source Code

Build Android Studio Source Code

作者头像
宅男潇涧
发布2018-08-01 14:58:30
2.8K0
发布2018-08-01 14:58:30
举报
文章被收录于专栏:潇涧技术专栏

本文简单记录下如何编译Android Studio这个开发工具的源码。

1.简单说明

android studio的源码其实是aosp中的一部分,同样是采用repo对git项目进行管理。 android studio的源码涉及到aosp中的sdk.git,ndk.git,external/qemu.git等几个项目。

sdk.git is the project for all java based tools such as the SDK Manager, DDMS, and the Eclipse plug-ins. ndk.git is the project hosting the Android NDK source files. external/qemu.git is the project for our qemu-based emulator.

sdk.git项目是一个核心项目,大部分基于Java开发的工具都在这个项目里面,包含了ddms,hierarchyviewer,lint,traceview等工具,其中的eclipse目录是android device monitor的工具的源码,包含了各种插件,例如ddms,traceview,hierarchyviewer等。

sdk.git项目根目录下的README文档的主要内容是关于sdk.git这个项目的变化以及使用需知 其中解答了几个重要的问题,例如如何只构建某个单独的工具?如何修改工具源码来构建一个新的sdk? (1)I don’t build full SDKs but I want to change tool X (2)How do I change some tools sources and build a new SDK using these?

文档http://tools.android.com/build中给出了编译sdk的方法

代码语言:javascript
复制
./tools/buildSrc/servers/build_tools.sh `pwd`/out `pwd`/out/dist 1234

如果遇到Required ANDROID_HOME environment variable not set.这个错误只需设置ANDROID_HOME这个环境变量即可

2.下载地址

android studio代码也可以通过repo来下载,分支可以使用master-dev或者某个具体版本对应的分支,下载之后大约占用4GB左右磁盘空间

代码语言:javascript
复制
repo init -u https://android.googlesource.com/platform/manifest -b studio-2.2

3.编译源码

3.1 使用ant 最简单的编译运行方式是在tools/idea目录下执行ant,最终会在tools/idea/out/中生成可运行的Android Studio应用程序

3.2 使用Intellij (推荐) tools/idea目录下的README.md文档说明了如何编译Android Studio源码 (1)下载Intellij Community版本并安装 (2)使用IDEA打开项目的tools/idea目录 (3)在Project Structure的SDKs中新建名为IDEA jdk的jdk,路径设置为jdk 6的根目录 如果是在Linux/Mac上运行的话,还需要将/lib/tools.jar添加到IDEA jdk中 (4)在Project Structure的SDKs中新建名为1.8的jdk,路径设置为jdk 8的根目录 (5)点击Build下的Make Project来编译项目源码 (6)选择IDEA这个运行配置来运行或者调试代码

运行起来就可以看到AS第一次安装时选择settings的界面,然后就进入到启动界面了

img
img

如果遇到java: package com.sun.source.tree does not exist这个错误的话记得检查是否已经将<JDK_HOME>/lib/tools.jar添加到IDEA jdk中

下面是README.md文档的原文,其中第一步执行tools/idea目录下的getPlugins.sh脚本,它会去下载两个repository,但是这个步骤在我这里一直没能成功,两个git项目能访问但是网络连接很慢源码下载不下来,不过幸运的是这个步骤对后面的操作貌似并没有影响。 git clone git://git.jetbrains.org/idea/android.git android git clone git://git.jetbrains.org/idea/adt-tools-base.git android/tools-base

Building and Running from the IDE To develop IntelliJ IDEA, you can use either IntelliJ IDEA Community Edition or IntelliJ IDEA Ultimate not older than 15.0. To build and run the code: - Run getPlugins.sh / getPlugins.bat from the project root directory to check out additional modules. - If this git repository is not on ‘master’ branch you need to checkout the same branches/tags in android and android/tools-base git repositories. - Open the project. - If an error notification about a missing required plugin (e.g. Kotlin) is shown enable or install that plugin. - Configure a JDK named “IDEA jdk” (case sensitive), pointing to an installation of JDK 1.6. - Unless you’re running on a Mac with an Apple JDK, add /lib/tools.jar to the set of “IDEA jdk” jars. - Configure a JDK named “1.8”, pointing to an installation of JDK 1.8. - Add /lib/tools.jar to the set of “1.8” jars. - Use Build | Make Project to build the code. - To run the code, use the provided shared run configuration “IDEA”.

4.其他参考资料

(1) Build Android Studio (2) hierarchyviewer工具的学习,从使用到源码实现 http://www.cnblogs.com/vowei/archive/2012/07/30/2614353.html http://www.cnblogs.com/vowei/archive/2012/08/03/2618753.html http://www.cnblogs.com/vowei/archive/2012/08/08/2627614.html http://www.cnblogs.com/vowei/archive/2012/08/22/2650722.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016/11/9,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.简单说明
  • 2.下载地址
  • 3.编译源码
  • 4.其他参考资料
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档