本文将介绍如何安装并使用Android Studio For Platform
系统版本: Ubuntu 22.04 lts
AOSP分支: android-14.0.0_r28
什么是Android Studio For Platform
Android Studio For Platform,是一种用来方便我们进行AOSP开发的特殊版本Android Studio,他与普通的Android Studio其实没有太大差别,只是增加了对AOSP开发相关的一些支持。
为什么要使用Android Studio For Platform
在原来,我们调试自己开发的源码的主要手段,可能是通过生成ipr文件来导入到Android Studio中,然后再进行系统源码的调试,但是这样做很麻烦,所以Google为AOSP开发者提供了专门的开发工具来帮助我们的开发工作。
下载并安装Android Studio For Platform
这是Android Studio For Platform的官网:
下载完成之后,安装对应的Deb文件:
安装完成之后,运行:
bash
cd /opt/android-studio-for-platform/bin
./studio.sh
然后就可以看到:
导入AOSP
首先我们点击:
进入如下界面:
Repo checkout
,选择你的AOSP源码根目录。
Lunch target
,选择你的lunch目标,比如模拟器的话就填写sdk_phone_x86_64
。
Module Path
,选择你要调试的模块,比如调试frameworks模块的话,就添加选择frameworks。
Project name
,填写你的项目名。
Location
,这是你的Android Studio For Platform存储项目信息的路径。
最后如下:
点击确定,进入Android Studio For Platform。
注意,首次进入时需要做建立索引等一些工作,所以会比较慢,耐心等待即可。
调试AOSP
下面我们将介绍如何调试我们的AOSP代码,在调试之前,我们要先将我们的模拟器运行起来:
bash
. build/envsetup.sh
lunch skd_phone_x86_64
make
emulator
运行起来之后,就可以开始下面的工作。
Attach Debugger
点击右上角的Attach Debugger To Android Process:
勾选Show all processes
,然后选择Java Only
,然后选择我们要attach的进程,比如我们的Setting:
当出现如下字样,说明我们的debugger已经attach完成了:
设置断点
找到我们需要打断点的类,比如我们最熟悉的/frameworks/base/core/java/android/app/Activity.java
,找到我们的onResume方法
,设置断点:
接下来打开我们模拟器的Setting应用,就可以看到我们已经进入我们的断点了: