目录
一 国内现状
二 实现方案
三 测试方案
四 技术难点
一 国内现状
国内云手游解决方案大致分为三种:
1 真实手机机器插卡方案
2 使用ARM服务器
3 用X86方式虚拟化ARM
二 实现方案
2.1 在x86机器上安装vbox虚拟化软件,然后通过vbox安装安卓操作系统(云手机模拟器)
缺点:经过了虚拟化层,并且有x86和arm的指令集转化,性能低,可能有些应用需要设配
优点:实现简单
2.2 直接是x86<->arm指令集转化
缺点:较难实现,需要熟悉指令集,需要针对不同的应用单独适配
优点:通用性
2.3 arm服务器 + arm虚拟化
缺点:需要维护arm相关技术
优点:对上层APP应用的兼容性较好
2.4 在x86机器上通过qemu虚拟出安卓x86虚拟机,然后开启x86和arm的兼容性配置
缺点:不是100%的兼容,有些APP运行不起来
优点:实现简单
2.5 Linux服务器 + 容器
缺点:兼容性/性能高
优点:实现简单
2.6 windows服务器 + 容器
缺点:兼容性/性能高
优点:可同时支持端游和手游
三 测试方案
x86架构下安装安卓x86虚拟机 + GPU
3.1 gpu透传
该方式在安卓下不可取,因为安卓下没有对应的显卡驱动;
不能达到多路并发的要求;
3.2 使用OpenGL ES
可以在安卓虚拟机内看到使用的是OpenGL ES3.1
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL9UkeNJTSq10dRRVT3V1MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLwIzN5QjMwATM2EjMxAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
3.3 测试
可以安装一些APP/游戏运行
3.4 存在问题
a. 兼容性差,大部分app运行不了
b. 使用不方便,虚拟机的开启方式需在服务器的界面上敲命令行
c. 有些app运行一段时间后会自动退出(闪退)
3.5 优点
一块显卡可以带多个安卓虚拟机,实现多路高并发
四 技术难点
1. 虚拟化
2. 机器资源调度
3. 游戏的适配
4. 端到端的流传输协议(RTC)
5. 网络时延