系统开发专用版 Android Studio 上手指南

准备工作

首先在 developer.android.com/studio/plat... 下载好 Android-Studio,目前仅支持 Ubuntu 系统。

下载好以后,使用以下命令安装:

bash 复制代码
sudo dpkg -i /你的下载路径/asfp-2023.1.1.19-linux.deb

在使用 Android Studio for Platform 之前需要有一份下载编译好的系统源码,具体可以参考AOSP极速上手

测试发现,Android Studio for Platform 不支持 android10 版本,我这里使用的是 aosp android12_r28 版本的源码。我使用的是 Cuttlefish 网页端的模拟器,不清楚的同学可以参考编完 aosp 还在刷机?云安卓了解一下,来试试网页版模拟器吧!

使用 Android Studio for Platform 打开系统模块

使用命令行打开 AS:

bash 复制代码
/opt/android-studio-for-platform/bin/studio.sh

打开后点击 Import Asfp Project

接着我们在第一个箭头处选择好我们的源码路径,第二个箭头处填写编译源码时选择的 Product,然后点击第三个箭头处的加号,来添加我们需要修改的模块,可以有多个,这里我添加了 Settings 模块。第四个箭头处勾选后可以支持 native 代码。

最后点击 Finish,稍作等待就会打开 Settings 模块了。

使用 Android Studio for Platform 调试系统模块

首先我们打开模拟器,这里我使用的是 Cuttlefish,不清楚的同学可以参考编完 aosp 还在刷机?云安卓了解一下,来试试网页版模拟器吧!

bash 复制代码
# 源码目录下
source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
# 开始编译
m
launch_cvd --start_webrtc=true

接着我们使用浏览器打开 https://localhost:8443 就可以看到我们的浏览器了。

接下来就可以配置调试环境了:

首先点击右上角调试按钮:

弹出配置窗口:

勾选 Show all processes,选择 Use default settings,Debug Type 选择 Java only(Settings 未涉及 native 代码),最下面的窗口选择 com.android.settings,然后点击确定。

接着我们在 Settings 的 SettingsHomepageActivity 主 Activity 中打上断点:

最后在虚拟机中打开 Settings App,我们的 Android Studio 就进入了 Debug 界面:

接下来就可以开始愉快的 debug 了!

总结

作为 Eclipse 时代过来的老人,Android Studio for Platform 整体上还是非常好用了,跳转代码,文件搜索和代码提示等常用功能体验都很好,而且使用上也比较简单,同时支持 Java kotlin 和 C++ 代码,这点不错。但是和 App 开发的体验还有不少差距,期待后面的更新吧!

相关推荐
下位子12 分钟前
『OpenGL学习滤镜相机』- Day6: EGL 与 GLSurfaceView 深入理解
android·opengl
java干货22 分钟前
MySQL “灵异事件”:我 INSERT id=11,为什么被 UPDATE id=10 锁住了?
android·数据库·mysql
正经教主1 小时前
【App开发】ADB 详细使用教程- Android 开发新人指南
android·adb
gx23481 小时前
MySQL-5-触发器和储存过程
android·mysql·adb
六件套是我9 小时前
redission实现延时队列
android·java·servlet
00后程序员张14 小时前
iOS 上架费用全解析 开发者账号、App 审核、工具使用与开心上架(Appuploader)免 Mac 成本优化指南
android·macos·ios·小程序·uni-app·cocoa·iphone
来来走走14 小时前
Android开发(Kotlin) 扩展函数和运算符重载
android·开发语言·kotlin
wuwu_q14 小时前
用通俗易懂 + Android 开发实战的方式,详细讲解 Kotlin Flow 中的 retryWhen 操作符
android·开发语言·kotlin
天选之女wow15 小时前
【代码随想录算法训练营——Day60】图论——94.城市间货物运输I、95.城市间货物运输II、96.城市间货物运输III
android·算法·图论
沐怡旸15 小时前
【底层机制】Android对Linux线程调度的移动设备优化深度解析
android·面试