内容目录
逻辑
- 安装x86
- 开启开发者模式
- 启用android协同软件开发
1、安装android x86
- VirtualBox中安装Android-x86详解 - wynn0123 - 博客园 按照这个教程就可以了
- 现在版本必须要设置 显示 vboxvga,不然进不了android系统,我开始不知道,找了好久资料才发现是这个,目前不能开启3d加速,否则配置无法使用。 我使用virtualbox 7.0 ,貌似6.0也有这个问题
2、开启开发者模式
- 打开设置,进入android界面后,鼠标从下往上滑
- 找到系统,找到about tablet
- 点击5次开启
- 找到developer options 打开adb 调试
- 关闭虚拟机,设置端口转发,从自己电脑5555端口转发android 5555,你电脑也可以设置其他端口,但adb 命令就需要打别的了
3、使用pc协同软件(我使用自己的开发的)
- ./wdb.exe connect 127.0.0.1 (右键快捷键,然后打开控制台),应该可以用网络扫描5555就可以了(这个是我自己特有的),一般软件也会带有adb.exe ,启动一样命令就可以了(貌似不用连接也能直接打开)
- 打开我自己的xscr软件就可以了,我默认支持android 9的。
- 安装自己输入法,方便自己打字,如果直接用模拟器的界面操作也可以
4、安装一个酷我试试
- 下载酷我车机版本
- 通过命令安装,找到下载的目录,通过adb install adb install .\kwplayercar_ar_APK_guanwang.apk (cmd一定要是当前目录,那么apk就是全路径)
- 打开酷我看看
- 直接浏览器安装,我安装库安失败了
市面模拟器怎么弄?
我这里用上面方法其实本质跟市面android模拟器大体逻辑一样,只是我通过手动操作,android 模拟器通过命令进行模拟(重新编译开源代码,变成自己的),然后自己手动编译android 系统插入自己代码,建立网络通信,跟PC软件进行收据传递和行为操作命令,这样子大体的逻辑。
为什么要研究这个技术?
之前发现pc应用宝模拟器,感觉比较神奇,后面跟AI交流分析,然后自己分析PC应用启动命令和日志,发现也是传统模拟器技术感觉差不了太多,于是想通过类似技术进行验证。
兼容性很差,因为它不是官方android ,android x86可以直接在virtualbox 安装使用,但兼容性比较麻烦的,我测试小宇宙无法安装,微信读书无法打开
补充
兼容性问题?
api 如果没有x86 abi那么是无法在模拟器上的,主流模拟器基本都是下x86,可以通过uname 命令进行查看,pc应用宝也是,他们同时也是使用intel houdini 库,用来跑只有arm cpu架构的APP,所以你必须安装这个,所以自己搜索android x86 lib houdini安装,按照教程弄一下,以后有有时间进行补充,
安装这个就可以跑市面大多数APP
市面pc 协同软件?
- scrcpy (老外开源),这个算是鼻祖了,我也是看它代码然后模仿自己写的,研究原理,后面自己慢慢摸索兼容android 版本
- 虫洞 国内软件,可以免费试用,但键盘操作和按键映射收费吧
- anlink ,貌似国外开发的,全免费
- xscr,我自己写的,全免费,支持android 13
总结
- 我们无须修改android 系统 结合 pc android协同软件就可以搭建系统,已经非常方便,没有广告,速度还不错,目前我还没有测试其他的APP ,不知道怎么样。
- 目前我的软件不支持APP,应该是没有读取到安装的app,没有看原因,后续可以修改一下,这个是重点
- 后续加入命令和bat操作,集合起来,快速启动模拟器然后启动对应的app,这样子就像PC应用宝一样类似逻辑,看起来APP和自己的APP一样。
- 估计兼容性不会太好,因为模拟器最大技术点就是要兼容各种app,这种需要逆向和一些特殊支持才可以,但这个对于我来说不重点,我重点验证这个技术可行性而已。