一、场景
由于AndroidStudio 工具不断升级,有时候在github 上找到的项目使用的版本比较老,导致导入的工程经常无法正常编译过。
二、找到的方法
在网上找到的看起来比较可行的方法是这个: 完美简单的解决Android Studio导入项目的Gradle问题(超简单)_好个李先生的博客-CSDN博客_android studio 导入gradle
注意点:
1、插件和gradle版本要匹配
2、build.gradle中配置的 compileSdkVersion 和 support 包依赖版要匹配,例如
compileSdkVersion 26 compile 'com.android.support:appcompat-v7:26.+'
3、资源R 类是根据packageName 来生成引用的,在实在无计可施,找不到编译问题时,只能将别人的代码移动到自己能正常编译的工程中来调试。
三、关于AndroidStudio 更新升级问题
最近在老电脑上升级了Android Studio 到了Bumblebee了,看来安卓又开始以动物命名,而不是用枯燥的数字了。升级之后原先的记录都还在,只是要配套升级gradle版本以及插件版本,具体说明参考官网:
Android Gradle 插件版本说明 | Android 开发者 | Android Developers
更新完之后, Android studio 的 gradle task 中会没有原先的任务,可以通过设置来调出来:
今天是2025-04-22, Mac 系统上面使用的是Android Studio lguana 版本,居然又是遇到打开工程后,gradle 任务没有的问题,又调试了半天,总以为是studio 版本升级后,gradle 以及agp 的版本不对应的问题,各种调整后,发现还是因为这个工具的设置里面不会将Experimental 中的这个sync选项勾选上,真的是不长记性。为啥这个要放置实验设置选项里面。。。
另外有些不该打开的选择不要乱勾选:
例如这个勾选,就会打包assemble 编译的是报错如下信息:
Operation is not supported for read-only collection