M1芯片16G Mac下Android Studio Gradle同步耗时40分钟问题求助
问题成因&解决方案
1. 架构不兼容导致的性能损耗
你使用的是x86_64版本的Android Studio,在M1芯片的设备上需要通过Rosetta 2转译运行,性能损失非常严重,这是同步速度极慢的核心原因之一。
- 直接下载适配Apple Silicon架构的Android Studio稳定版,建议升级到Electric Eel及以上版本,原生支持Arm架构,这一步就能大幅降低同步耗时。
2. 内存分配不足
当前Android Studio仅分配了3G运行内存,带有Unity模块的项目对内存要求更高,内存不足会导致频繁GC、进程卡顿。
- 打开
Help > Edit Custom VM Options,修改运行内存参数:
-Xms4G -Xmx8G -XX:MaxMetaspaceSize=2G -XX:ReservedCodeCacheSize=2G
- 在项目根目录
gradle.properties中添加Gradle构建优化配置:
org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=2G -Dfile.encoding=UTF-8 org.gradle.parallel=true org.gradle.caching=true org.gradle.configureondemand=true org.gradle.daemon=true
16G内存的设备分配8G给构建环境不会影响系统其他功能运行。
3. 依赖仓库访问延迟高
如果在国内环境,默认的谷歌、mavenCentral仓库访问速度极慢,容易卡在依赖拉取环节。
- 替换项目根目录
settings.gradle中的仓库配置为国内阿里云镜像:
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/public' } maven { url 'https://maven.aliyun.com/repository/gradle-plugin' } google() mavenCentral() } }
同步替换allprojects代码块中的仓库配置即可。
4. Unity模块配置冗余
unityLibrary作为导出的第三方模块,如果不需要频繁修改,可直接导出为aar文件引入项目,不用每次同步都重新解析该模块的完整配置,能减少大量同步工作量。
如果需要保留模块配置,检查build.gradle中是否有重复依赖、多余的架构过滤配置,删除无用配置即可。
5. Gradle版本适配问题
你当前使用的Arctic Fox版本配套的Gradle版本较低,对M1架构适配不完善,建议升级到Gradle 7.0+版本,同时升级对应的Android Gradle Plugin到匹配版本,原生适配Arm架构构建流程。
内容的提问来源于stack exchange,提问作者EdisonLiao
相关产品推荐
相关产品推荐

