这个问题通常出现在设备上先安装了生产版本的应用,然后想在设备上用调试模式安装同一个应用。在这种情况下,React Native的JS代码会收到一个通知,告诉它将要从设备上的生产版本加载bundle,而不是从Packager上下载。
为了解决这个问题,可以在设备上先卸载生产版本的应用,然后重新安装调试版本的应用。如果无法卸载应用,可以尝试清除设备的应用缓存,方法如下:
另外,如果你使用的是Xcode或Android Studio,可以通过手动运行Packager来下载最新的JS bundle并覆盖设备上的bundle文件。在Xcode下,你可以在终端窗口中使用以下命令:
curl "http://localhost:8081/index.ios.bundle?platform=ios&dev=true" -o "main.jsbundle"
这将从Packager上下载最新的ios bundle,并在设备上创建一个名为main.jsbundle的文件,它会覆盖存储在设备上的旧bundle文件。注意更改命令中的端口和平台参数,以适应你的开发环境。
下一篇:安装生成器 - 签名卸载程序