在android手机上运行react-native项目时
报错:unable to load script from assets 'index.android bundle' ,make sure your bundle is packaged correctly or youu're runing a packager server
目前我所使用的版本:
react-native-cli: 2.0.1
react-native: 0.56.0
将版本换为以下版本
react-native 0.55.4 比较稳定,
react-native-cli 1.2.0更稳定,
所以先将旧版卸载:
npm uninstall -g react-native-cli
npm uninstall -g react-native
再装上新版本:
npm install -g react-native@0.55.4
npm install -g react-native-cli@1.2.0
再在项目初始化的时候指定 React Native 版本:
react-native init --version="0.55.4" myFirstApp
解决方案:
第一步:在 android/app/src/main 目录下创建一个 assets空文件夹
第二步:执行 下面这段命令
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
会发现 assets文件夹下多出两个文件
第三步:重新run程序。
总结:
这个index.android.bundle毫无疑问就是用来调用原生控件的js脚本,每次当你改变了 index.android.js,你都需要使用上面的代码片段,来及时的更新index.android.bundle,然后打包才可以把新的index.android.js应用上,所以当没有index.android.bundle文件时,RN是无法运行的.