系统开发专用版 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 小时前
流程时效考核的表结构:从待办时限到 WF_CH 考核结果驰骋BPM驰骋低代码低代码工作流引擎
android·低代码·rxjava
传奇开心果编程9 小时前
【Flutter踩坑排雷】第7课:巨型 build 函数坑|全部 UI 写在同一个 build,维护难、隐性异常
android·flutter·ios·移动开发·跨平台·dart·声明式ui
方白羽13 小时前
Android 双开环境底层剖析与风控检测落地
android·安全·app
weixin_5633714713 小时前
Android Studio 2024 版 Device Explorer 打开方法
android·ide·android studio
AIsoft_868916 小时前
职场音频文件怎么整理?录音APP有哪些用法
android·音视频
booboosui16 小时前
第一批个人 Agent 用户正在卸载,问题不在模型,在它住在哪儿
android
洞见前行16 小时前
点击图标到内容出现,你的 App 在这几秒里做了什么:Android 冷启动全链路优化实战
android·性能优化·android studio
凯基迪科技16 小时前
芯片UID绑定修改 加密与逆向修改思路分析
android
Liben17 小时前
Weex开发踩坑记录
android·前端·ios
救救孩子把19 小时前
结构化输出为何“格式正确、答案错误”?JSON Schema 的能力边界
android·java·json·agent·agent服务