1.Android Cuttlefish模拟器(Android Automotive)
2.Windows平台下载AOSP源码(使用中科大镜像)
3.怎样获得Android app源代码
4.深入学习Repo
5.总结常用repo命令
6.如何用Gerrit管理你的源码Android代码?
Android Cuttlefish模拟器(Android Automotive)
为了在实际工作和学习中体验Android Automotive的多屏区划和特殊交互,本文将指导如何基于Android 源码自建一个 Automotive 模拟器,仓库特别针对网络受限的源码用户,通过清华大学开源软件镜像站获取AOSP源码。仓库
首先,源码准备下载AOSP源码。仓库同一批次的溯源码一样吗在~/bin目录下创建repo工具,源码并通过curl获取存储网上的仓库资源,确保可执行权限。源码具体步骤可参考"不懂内核的仓库小潘"的文章中关于repo命令的总结。
接下来,源码访问mirrors.tuna.tsinghua.edu.cn下载android repo仓库,仓库由于代码隐藏在.repo目录中,源码下载后解压并使用repo sync命令获取完整目录。仓库找到对应版本,源码如android-.0.1_r1。
编译前,请确保源码目录有足够的空间(至少GB以上,我编译的android驱动移植源码x_版本耗用超过GB)。在源码根目录下,了解Cuttlefish与默认模拟器的区别,Cuttlefish更侧重底层调试,而emulator更偏向应用测试。
通过lunch命令选择构型,如aosp_cf_x__auto-userdebug,其中cf表示Cuttlefish,auto专为Automotive设计。选择x版本,土豪金麻将 源码速度较快,arm版本则表现不佳。启动模拟器需要执行相应的命令,如launch_cvd,注意配置环境变量并保持网络连接。
成功启动后,在浏览器访问/aos... -b master,这里的URL应替换为实际的AOSP仓库地址。
最后,apache cas源码下载执行repo sync命令以同步最新代码。在下载过程中,可以参考Android官网-AOSP源码下载和Android镜像使用帮助文档,以获取详细指导和常见问题解决方案。
怎样获得Android app源代码
获取Android应用源代码有几种途径,具体取决于你想要获取哪个应用的源代码以及你的目的。以下是几种常见方法:
1. **公开的开源项目**:
- **GitHub、GitLab、Gitee等代码托管平台**:许多Android开发者会在这些平台上分享他们的装饰公司报价源码开源项目。你可以在这些平台上搜索应用名称或相关关键词来寻找源代码。例如,访问GitHub(...,下载完成后记得根据checksum.txt的内容校验一下。由于所有代码都是从隐藏的.repo目录中checkout出来的,所以我们只保留了.repo目录,下载后解压再repo sync一遍即可得到完整的目录。使用方法如下:
此后,每次只需运行repo sync即可保持同步。
建立工作目录并初始化仓库: repo init -u mirrors.tuna.tsinghua.edu.cn... 如果需要某个特定的Android版本(列表): repo init -u mirrors.tuna.tsinghua.edu.cn... -b android-4.0.1_r1 同步源码树(以后只需执行这条命令来同步): repo sync 详细可见:AOSP | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror Android源码(AOSP)下载与编译 - 掘金
设置WSL内存大小
直接编译源码,会因为内存不足导致失败,通过free -m查看内存,只有4GB内存,swap空间只有2GB。可以通过设置WSL配置文件来修改相关配置属性。在用户目录下新建.wslconfig文件,在文件管理器输入%USERPROFILE%可找到用户文件夹。注意这里新建.wslconfig文件不要用新建文本文件的方式,这样文件可能没法被正确识别。可以通过命令行输入code .wslconfig的方式。
配置文件如下,根据自己的硬件配置尽可能多的分配多点资源,在编译完成后也能修改回来。我电脑是GB内存,所以给WSL配置GB内存,还有GB swap空间。
编译源码
编译源码就是常规流程,lunch项根据自己需要进行选择,编译线程数根据机器配置选择。
编译可能会报错缺少库文件,直接安装即可。sudo apt-get install libncurses5 如果需要编译出CMakeLists文件,方便导入CLion,需要在编译前添加环境变量。
编译成功!!
导入Clion效果。
若需要导入Android Studio中,还需要生成配置索引。
这一步需要Java环境,提前安装一下。sudo apt install openjdk--jdk
最终效果如下: