Mac M1下Android Studio Arctic Fox执行pod install失败问题咨询
核心疑问确认
ARM架构适配版的Android Studio默认运行在Apple硅原生模式下,其内置终端也会继承原生ARM运行环境,不会沿用你给系统终端单独配置的Rosetta 2强制运行规则,这是你遇到构建失败的核心诱因。
报错根因说明
你日志中抛出的Encoding::CompatibilityError编码错误,本质是原生ARM环境下的终端未正确配置UTF-8字符编码,CocoaPods运行时要求环境编码为UTF-8,但Android Studio内置终端默认的编码格式为ASCII-8BIT,触发了Ruby层的unicode归一化校验失败。
你手动通过Rosetta 2打开的系统终端已经提前配置好了正确的UTF-8编码,且x86_64转译环境下的CocoaPods、Ruby组件兼容性更好,因此手动执行pod install可以正常运行。
可用解决方案
你可以根据自己的使用习惯任选一种方案解决:
方案1:修复原生ARM环境编码问题(无需Rosetta转译,性能更好)
- 打开Android Studio内置终端,执行
open ~/.zshrc(如果使用bash则替换为open ~/.bash_profile) - 在配置文件末尾添加两行内容:
export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8
- 保存文件后执行
source ~/.zshrc(或对应bash的source命令)让配置生效,之后重新执行iOS构建即可正常运行pod install
方案2:强制Android Studio通过Rosetta 2运行(和你现有系统终端环境统一)
- 打开访达「应用程序」目录,找到Android Studio图标右键点击「显示简介」
- 勾选「使用Rosetta打开」选项,重启Android Studio后,内置终端就会运行在x86_64转译环境下,直接运行iOS构建即可
额外说明
日志中提示的三个插件使用废弃Android嵌入接口的警告,和本次iOS构建失败无关,后续升级Flutter到较新版本前,将对应插件替换为支持Android V2嵌入的版本即可,不影响当前开发使用。
内容的提问来源于stack exchange,提问作者Lakhwinder Singh
相关产品推荐
相关产品推荐

