打包react native的代码,和打包原生安卓有点不一样。因为直接用Android studio打包,并不会把js代码打包到apk中,就会导致react native打包的apk安装后运行直接闪退。所以要分成两步,第一步,打包成react native写的js代码,第二步,用Android studio打包成apk(也可以用命令行打包,根据官网教程打包即可,传送门)。
1 打包react native代码
1.1 进入项目根目录
1.2 运行命令
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/
这里需要注意的是,如果你的项目react-native
版本比较低,则参数--entry-file
的值index.js
要改成index.android.js
。也就是说,如果你的入口文件只有一个,那肯定就是index.js
了。如果有两个,index.android.js
和index.ios.js
,那说明是较早版本的react-native
项目,安卓和iOS的入口文件是分开的。
入口文件为index.android.js
的完整命令如下:
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/
2 打包成apk
第1步完成之后,再按照原生项目打包流程走就好了。
注:此篇文章需要有开发原生安卓的基础(至少有打包原生安卓的基础)
3 可能出现的错误
ENOENT: no such file or directory, open 'android/app/src/main/assets/index.android.bundle'
只需要在安卓的mian路径下建一个assets文件夹即可
欢迎加我微信,拉进群交流哦!
![](https://img.haomeiwen.com/i8484958/2f7de992b7415e9d.png)
网友评论