很遗憾,经过实操,我发现在linux+arm64的环境中,(几乎)没办法编译安卓程序。理由如下
- android studio不支持linux+arm64。
- 不用android studio我们还可以使用gradle通过命令行直接编译安卓程序,但是这需要
- Java SDK
- Android SDK
- gradle在编译和打包的过程中会调用android sdk>build-tools中的一些工具。
- 很不幸的是,这些工具中,有一些也不支持linux+arm64
- 当gradle在编译和打包的过程中,它们就会报错,比如最先报错的是aapt2。
- 在终端执行file attpt2命令,你会发现,attpt2其实是一个x-86架构的应用程序。所以在arm64架构下,它是无效的应用程序格式
- 再查一下很容易发现,2022年就有人给谷歌提了需求,要求把arm64架构全面的支持起来,结果直到最近这个问题都没有解决。大家纷纷留言表示现在云端服务器和笔记本的cpu都越来越多的采用arm架构,谷歌应该尽快满足开发者在arm架构下编译和打包安卓apk的需求。
为什么linux+arm64环境下(几乎)无法编译安卓程序