其最为致命的一点,是这个iOS模拟器到底是怎么做出来的?众所周知,X86架构主要应用在PC和小型服务器上,ARM则集中在移动端,二者之间可以说是完全不同的两套体系。并且从理论上讲也并无可能,毕竟开发者也是需要在Mac上才能进行iOS程序的开发工作。
事实上,这款黑雷模拟器,基本上可以看作是一个没有授权就搬到Windows上的Xcode iPhone Simulator(正经的iPhone模拟器)。其是在Windows环境中下载一个vmdk格式的MacOS虚拟镜像,然后再在这个MacOS中用Xcode里的iOS模拟器,模拟出来的。简而言之就是,Windows套虚拟机模拟Mac环境,再逆向魔改后的Xcode自带模拟器。
看到这里,大家估计也就明白了,这种在虚拟机上运行虚拟机的做法,对于PC性能的要求绝对不低,而我们测试用的PC应该也算的上一个典型的中端配置,至少在1080P下流畅运行3A大作是毫无压力的。因此,很多想要在PC端玩iOS游戏的朋友应该会比较失望,毕竟从ARM到x86的代码编译性能损失极大,即便PC端具备更大的屏幕、更丰富的人机操作空间,以及更强的性能,但是在图形处理能力上的损失,用CPU自带的核显和低端独显是弥补不了的,因此想要流畅的在PC端玩iOS游戏的用户,还需要准备一个性能足够的电脑。
在黑雷模拟器上,我们下载APP并非通过苹果的App Store,而是在其自带的黑雷商城上下载,并且提供的数量也是寥寥无几。以微信和碧蓝航线为例,二者均与腾讯和哔哩哔哩在App Store上上传的官方版本有明显的区别,App Store版微信的版本号已经来到了7.0.3,而黑雷版中则是5个月之前的6.7.3,碧蓝航线的版本号倒是统一了,但是二者的安装包体积却是1.1GB和975MB的差距。
这背后的原因,可能是因为是因为PC端无论Intel还是AMD,都是采用的x86架构,而移动端上Android和iOS则都是ARM架构,二者之间的差异就像是汉语和英语的区别。因此在Android端的模拟器能够实现随便一个APK文件拖进模拟器就能安装,是得益于Android-x86的存在,但是iOS端目前则绝无这种可能。
撩拨苹果,黑雷堪称胆大包天
虽然的Xcode自带的iOS Simulator模拟器有开发者编译程序,而且是API级别的模拟,但是只能运行开发者自己Mac上编译出来的程序,也就是说黑雷模拟器能够提供的游戏是有限的,因此要么是与APP的开发者合作单独编译了一个x86版本,要么是ipa文件反编译成源代码。
而黑雷这样一个名不见经传的团队,能够让腾讯屈尊降贵编译一份x86 64位架构的微信,可以想想这种可能性有多大。那么ARM 64可执行文件或者说更新一点的bitcode中间码是怎么来的呢?