Mac端Flutter运行安卓模拟器报INSTALL_FAILED_INSUFFICIENT_STORAGE如何解决
问题背景
在Android Emulator运行Flutter应用时触发INSTALL_FAILED_INSUFFICIENT_STORAGE报错,已验证的特征如下:
- 擦除AVD数据、重启VS Code后重试无效
- 偶发执行
flutter clean、flutter pub get后可正常运行,但方法不具备稳定复现性 - 公开渠道可查的同类问题通用解决方案全部尝试后均无效
- 同项目在Windows10设备上运行无异常,在2020款MacBook Air上所有项目(含空白模板新建项目)均会触发该报错
完整报错日志
执行flutter run的终端输出如下:
flutter run Using hardware rendering with device sdk gphone64 arm64. If you notice graphics artifacts, consider enabling software rendering with "--enable-software-rendering". Launching lib/main.dart on sdk gphone64 arm64 in debug mode... Running Gradle task 'assembleDebug'... 12.9s ✓ Built build/app/outputs/flutter-apk/app-debug.apk. Installing build/app/outputs/flutter-apk/app.apk... 689ms Error: ADB exited with exit code 1 Performing Streamed Install adb: failed to install /Users/harunbegic/Desktop/dev/flutter/login_authh/build/app/outp uts/flutter-apk/app.apk: Failure [INSTALL_FAILED_INSUFFICIENT_STORAGE] Error launching application on sdk gphone64 arm64.
解决方法
该问题是Apple Silicon芯片Mac上ARM64架构Android模拟器的已知兼容问题,和项目代码、Mac实际磁盘剩余空间无关,按以下步骤操作即可修复:
- 调整AVD存储配置
- 打开Android Studio内的Device Manager,找到报错对应模拟器,点击编辑入口(铅笔图标)
- 展开高级设置(Show Advanced Settings),滚动到存储配置板块
- 将内部存储(Internal Storage)默认容量调整为8G及以上,SD卡容量设置为4G及以上,保存配置
- 对该模拟器执行Wipe Data擦除用户数据,选择Cold Boot Now冷启动,不要使用快速启动快照
- 修复ADB安装路径校验bug
- 模拟器完全启动后,终端依次执行以下命令:
adb shell pm set-install-location 1 adb shell rm -rf /data/local/tmp/*
- 回到项目目录重新执行
flutter run即可正常安装,不会再触发存储不足报错
- 临时规避方案
如果上述配置后偶发复现,可在执行flutter run前先手动执行安装命令:
adb install -r build/app/outputs/flutter-apk/app-debug.apk
待APK安装成功后再执行flutter run,会直接附加调试进程,跳过安装校验环节。
内容的提问来源于stack exchange,提问作者Harun Begic
相关产品推荐
相关产品推荐

