您的位置:首页 > Web前端 > React

React Native 程序部署至 iOS 应用商店之前需要的配置和如何生成 release 版本的 APK 包

2016-10-13 15:08 756 查看


React Native程序部署至iOS应用商店

在我们写RN程序时,可以在模拟器直接测试,也可以手机连接电脑真机测试,还可以把RN程序通过Xcode安装到苹果手机以后,只要保持手机和电脑的Wi-Fi在同一个网断就可以正常使用,但是我们上传到App Store或者给客户打包一个ipa包以便客户安装并且走到哪都能够正常测试这个程序时,就需要做一些额外的配置。


1、更新AppDelegate.m文件里面的代码



上图中1是测试时候的代码,如果要给客户打包或者部署到App Store时把1的代码替换成2即可。


2、终端命令配置

(1)终端切换到项目路径


(2)终端执行“ 
react-native bundle --minify --entry-file
index.ios.js --bundle-output main.jsbundle”命令




PS: 有些文章或者博客会告诉你终端执行 react–native bundle —minify 命令即可,但是经常会出现 React native to app store missing required arguments 这个错误。

以上配置没问题以后,就按照iOS正常的配置打包ipa安装或者上传到App Store即可。

React Native应用生成release版本的APK

为了部署Android应用,我们需要生成release版本的APK(APK文件是Android应用安装包文件,iOS安装包文件是ipa,该格式用于发布安装应用)。通常讲,有以下五个步骤:

(1)生成签名秘钥

(2)设置gradle变量

(3)添加签名到应用的build.gradle配置中

(4)生成release版本的APK

(5)在设备上安装release版本的APK

首先需要向你的应用生成一个keystore和key,首先先在终端切换到桌面,再输入“ keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000”命令,如下图所示:



按照上图执行完以后会在桌面生成一个“my-release-key.keystore”文件,将此文件拷贝到项目的android/app/目录下:



接着在终端输入 vi ~/.gradle/gradle.properties命令,在 vi ~/.gradle/gradle.properties文件中添加如下内容:

MYAPP_RELEASE_STORE_FILE=my-release-key.keystore

MYAPP_RELEASE_KEY_ALIAS=my-key-alias

MYAPP_RELEASE_STORE_PASSWORD=liyuechun

MYAPP_RELEASE_KEY_PASSWORD=liyuechun

需要把上面的liyuechun替换成你之前调用keytool时使用的密码。

在~/.gradle/gradle.properties文件中添加上面的信息后,我们就成功的把她们加入到gradle通用配置中了,PS:gradle是用来构建React Native项目的工具。

现在我们已经设置好了gradle变量,接着需要把我们的签名配置添加到应用的gradle配置中。用Sublime打开android/app/build.gradle文件,然后添加如下签名配置,PS:我用红线框起来的内容是需要添加的,这里使用了之前在~/.gradle/gradle.properties文件中定义的变量。



OK,接下来到了我们声明签名版APK的时候了

进入项目根目录,在终端运行npm start命令

$npm start

然后在项目根目录下再次运行下列命令:

$mkdir -p android/app/src/main/assets

$ curl “http://localhost:8081/index.android.bundle?platform=android&dev=false&minify=true” -o “android/app/src/main/assets/index.android.bundle”

$cd android

$./gradlew assembleRelease

上面的代码中,首先我们创建了一个assets/ 目录来存储打包的JavaScript文件。然后,通过curl从React Native包管理器获取了打包的JavaScript文件。最后,使用gradlew来构建release版本的APK

如何确认Release版本的APK包生成成功,在终端执行如下命令:



也可以直接将手机通过数据线和电脑连接,并且打开调试模式,切换到项目根目录路径下面,通过react-native run-android直接安装在手机上。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: