1. 问题现象与背景解析
当你在Android Studio中启动Android虚拟机(AVD)时,突然弹出一个红色警告框显示"Encryption unsuccessful",同时伴随着"Intel HAXM is deprecated"的提示。这种情况通常发生在Windows或macOS平台上使用Intel处理器进行Android开发时。
我遇到过不下十次类似问题,最棘手的一次导致整个开发进度停滞半天。从错误截图来看,系统明确提示:"The system could not be encrypted. To continue using your device, you'll need to perform a factory reset."(系统加密失败,要继续使用设备需要恢复出厂设置)
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 问题根源深度剖析
2.1 HAXM废弃与加密失败的关联
Intel HAXM(Hardware Accelerated Execution Manager)是Intel提供的硬件加速执行管理器,用于提升Android模拟器的运行速度。但Google在2020年就已宣布HAXM进入废弃状态,转而推荐使用自家的Android Emulator Hypervisor Driver(AEHD)。
当HAXM与新版Android模拟器配合使用时,容易出现以下问题链:
- HAXM驱动不稳定导致加密过程中断
- 加密失败造成虚拟机快照损坏
- 快照损坏又导致后续启动失败
- 最终形成"Error -1 from the snapshot callback"的错误循环
2.2 加密失败的具体成因
Android模拟器从API 28(Android 9)开始引入了数据加密功能,主要出于安全考虑。加密过程会在首次启动时自动执行,涉及:
- 用户数据分区加密
- 系统镜像完整性校验
- 密钥生成与存储
当这个过程被中断(通常由于HAXM崩溃),就会导致加密状态不一致,模拟器出于安全考虑会拒绝启动。
3. 解决方案全攻略
3.1 应急方案:冷启动/擦除AVD(最快恢复)
这是最直接的解决方案,适合急需继续开发的情况:
- 关闭当前模拟器实例
- 在AVD Manager中找到对应虚拟机
- 点击右侧下拉箭头选择
