Mac中真机测试React Native project时出现Unable to load script from assets 'index.android.bundle'

刚接触学习React Native,在进行真机调试时,报错出现Unable to load script from assets ‘index.android.bundle’. Make sure your bundle is packaged correctly or you’re running a packager server。这里对此做一下记录;

笔者对此也查了相关的解决方法,但是并没有解决我所遇到的问题,解决方法如下:

第一步:首先切到我们工程的根目录下,然后在android/app/src/main目录下新建一个assets文件夹,可以在终端中执行以下命令建立:

mkdir android/app/src/main/assets

当然也可以在Android Studio中手动建立;

第二步:同样需要在我们工程的根目录下,执行以下命令:

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

第三步:重新运行以下命令即可:

react-native run-android

然而,这样并没有解决上述问题,依然报错,且此时会出现另外一个问题:

Cannot find entry file index.android.js in any of the roots: ["/Users/******/ReactNativeProjects/FirstReactApp"]

这时我们去assets文件夹下才发现,第二步的命令并没有在assets文件夹中生成我们所需的文件,里面没有任何文件生成,此时笔者继续查找,在Stack Overflow中找到了解决方法,用下面的命令替换刚才第二步的命令:

react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

原来是index.android.js已经改成index.js,难怪找不到呢!!!
使用上述命令后,此时在assets文件夹下会多出index.android.bundle和index.android.bundle.meta两个文件;

再重新运行工程,终于出现运行成功的界面啦!
这里写图片描述

小结:遇到问题时要敢于去解决,多查找问题的原因,这里index.android.bundle是用来调用系统原生控件的js脚本,每次当你改变了 index.js时,需要使用上面的命令及时地更新index.android.bundle,然后打包才可以把新的index.js应用上,所以当没有index.android.bundle文件时,React Native是无法运行的;

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值