系统开发专用版 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 开发的体验还有不少差距,期待后面的更新吧!

相关推荐
艾莉丝努力练剑7 分钟前
【QT】常用控件(一):初识控件,熟悉QWidget
android·linux·数据库·qt·学习·mysql·qt5
2501_9159184115 分钟前
iOS App HTTPS 抓包工具,代理抓包和数据线直连 iPhone 抓包的流程
android·ios·小程序·https·uni-app·iphone·webview
urkay-26 分钟前
Android 当前Activity内显示的浮窗
android·java·iphone·androidx
奔跑吧 android26 分钟前
【车载audio】【AudioService 01】【Android 音频子系统分析:按键音(Sound Effects)开启与关闭机制深度解析】
android·音视频·audioflinger·audioservice·audiohal
液态不合群41 分钟前
低代码融合大模型:对话式UI生成的技术实现与工程落地
android·人工智能·架构·rxjava
147API1 小时前
Claude 模型选型:Opus/Sonnet/Haiku + 成本/限速预算(Kotlin)
android·开发语言·kotlin·147api
常利兵1 小时前
从0到1:Android手游SDK组件化开发秘籍
android
Wizard7971 小时前
LINUX BootLoader启动程序解析
android·linux
段娇娇1 小时前
Android jetpack Lifecycle(二)原理篇
android·android jetpack