MAC下网易MuMu模拟器调试ReactNative
疫情原因得在家远程办公,在MAC下开发RN的时候发现了一个平台兼容问题,手里头没有安卓设备,只能用模拟器,AS avd、genymotion笨重还慢,后来发现了网易mumu这个小东西,又小又快。自己捣鼓了一天终于在模拟器上运行上了,这里记录过程。
调试前准备
- JAVA环境
- ADB环境(可以在终端运行adb命令)
- node环境
- 下载并安装好网易MuMu模拟器
1. 运行网易MuMu,打开后在首页打开设置->开发者选项->打开USB调试模式
如果已经打包好的apk文件,则直接将apk文件拖动到模拟器窗口,apk会被自动安装
2. ADB connect
这里需要说明一下,在我看了一堆博客之后,发现这个MuMu在MAC和PC下是的端口号是不一样的。windows端口号是7555,macOS下端口号是22471,下面的指令需要根据系统不同自己修改
在终端执行以下命令:
# 为了保证连接正常,需要确保之前的模拟器都关闭,稳妥起见,先关闭adb服务
adb kill-server
# 查看网易MuMu是否已经正常启动(可选)
sudo lsof -i:22471
# 执行connect指令
adb connect localhost:22471
这个时候可能会显示failed to connect to localhost:22471
,提示连接失败,别管它往后走
# 查看当前连接的设备
adb devices
如果之前提示了连接失败,在此时再次执行
adb connect localhost:22471
,会提示already connected to localhost:22471
至此,MuMu已经可以作为一个可调试设备了。
3.运行npm服务器,此时需要记下npm服务器端口后面要用。
4.在项目根目录下执行react-native run-android
并指定设备运行。
此时还无法正常调试RN页面,需要通过这个摇一摇功能,打开RN调试工具,测试发现点击一下“摇一摇”可能不弹出调试菜单,需要连续点击,可能模拟器模拟的摇的劲儿不够大吧哈哈哈
选择
选择
此时查看电脑本地IPv4地址即可,windows可以使用ipconfig
,macOS使用ifconfig
。
将获取到的IP地址加上之前获取到的端口即可。