Husk 2.0开源 可在iPhone运行Android游戏
素材来源=无可用官方素材|事件日=10月18日(距今1天)|标题去空格=27字符
独立开发者 Leviidev 于 10 月 18 日公布了开源项目 Husk 2.0(GitHub 仓库)。该项目用一套自研翻译层,让部分 Android 应用自带的 64 位原生代码直接在 iPhone 处理器上执行,无需越狱,支持 iOS 16 及以上系统,目前已兼容超过 150 款应用。消息来源为 IT之家 10 月 18 日报道。
它和模拟器不是一回事
传统 Android 模拟器走的是整机路线:以 QEMU 类方案为例,需要模拟完整 Android 系统,包含启动系统、加载内核、拉起系统服务一整套流程。Husk 绕开了这部分,直接把游戏的 DEX 文件与 .so 动态库加载进一个普通 iOS 应用的进程里,再由翻译层本身提供游戏所需的 Android 运行环境。
由于被兼容的原生代码跑在实体 CPU 上,Husk 不必为完整系统模拟付出相应的性能开销,这也是它在 iPhone 上能跑起大型游戏的前提。
图形接口转换与外设处理
图形这块 Husk 做了两层转接:通过 ANGLE 把游戏发出的 OpenGL ES 调用转换为苹果平台的图形接口,再借助 MoltenVK 提供 Vulkan 支持。音频、触控、手柄输入也一并处理,等于把游戏运行时会碰到的主要系统调用都补齐了。
兼容范围:主流引擎基本覆盖
- 安装包格式:APK、XAPK、APKM、APKS 均可导入
- 游戏引擎:Unity、Unreal Engine 4、Godot 3/4
- 常用运行库:cocos2d-x、SDL2、SDL3
- 已验证可运行:《GTA:圣安地列斯》
代价:三个现实限制
Husk 依赖 JIT 编译,而 iOS 上启用 JIT 需要通过调试器授权;应用需要侧载部署,不能走 App Store 常规安装;同时一次只能运行一款应用,切换游戏必须完全重启 Husk。
这三条决定了它的定位——技术爱好者尝鲜工具,而不是普通用户日常玩 Android 游戏的方案。JIT 授权和侧载在 iOS 环境里都有失效风险,单应用限制也意味着切换成本不低。150 多款应用的兼容量说明翻译层本身已经能用了,剩下的障碍主要在苹果的系统策略一侧。