React Native调试与打包发布

前端之家收集整理的这篇文章主要介绍了React Native调试与打包发布前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1.生成一个签名密钥

@H_404_5@ keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000@H_404_5@ @H_404_5@ 最后它会生成一个叫做my-release-key.keystore的密钥库文件@H_404_5@ @H_404_5@ 2.找到路径/android/app/src/main,并在该目录下新建assets文件夹@H_404_5@ @H_404_5@ 3.在工程目录下将index.android.bundle下载并保存到assets资源文件夹中@H_404_5@ @H_404_5@ curl -k "http://localhost:8081/index.android.bundle" > android/app/src/main/assets/index.android.bundle@H_404_5@ @H_404_5@ 这句命令是重点,如果assets目录中不存在该文件,则打包的apk在执行时显示空白。@H_404_5@ @H_404_5@ Protocol 'http not supported or disabled in libcurl@H_404_5@ @H_404_5@ Windows下安装使用curl命令:http://jingyan.baidu.com/article/a681b0dec4c67a3b1943467c.html@H_404_5@ @H_404_5@ 4.添加gradle的android keystore配置@H_404_5@ @H_404_5@ 打包的apk在未签名的情况下,在手机中(非root)是不允许安装的@H_404_5@ @H_404_5@ 在build.gradle文件中@H_404_5@ @H_404_5@ //签名@H_404_5@ signingConfigs{@H_404_5@ release {@H_404_5@ storeFile file("/my-release-key.keystore")@H_404_5@ storePassword "密码"@H_404_5@ keyAlias "keyAlias的名字"@H_404_5@ keyPassword "密码"@H_404_5@ }@H_404_5@ }@H_404_5@ buildTypes {@H_404_5@ release {@H_404_5@ minifyEnabled false@H_404_5@ proguardFiles getDefaultProguardFile('proguard-android.txt'),'proguard-rules.pro'@H_404_5@ signingConfig signingConfigs.release //添加这句话引用签名配置@H_404_5@ }@H_404_5@ }@H_404_5@ @H_404_5@ @H_404_5@ 5.启用Proguard代码混淆来缩小APK文件的大小@H_404_5@ @H_404_5@ Proguard是一个Java字节码混淆压缩工具,它可以移除掉React Native Java(和它的依赖库中)中没有被使用到的部分,最终有效的减少APK的大小。@H_404_5@ @H_404_5@ 重要:启用Proguard之后,你必须再次全面地测试你的应用。Proguard有时候需要为你引入的每个原生库做一些额外的配置。参见app/proguard-rules.pro文件。@H_404_5@ @H_404_5@ def enableProguardInReleaseBuilds = true

@H_404_5@

6.安装gradle工具(版本与android\gradle\wrapper下的一致)

并配置环境变量,配置GRADLE_HOME到你的gradle根目录当中,然后把%GRADLE_HOME%/bin(linux或mac的是$GRADLE_HOME/bin)加到PATH的环境变量。@H_404_5@ @H_404_5@ 配置完成之后,运行gradle -v,检查一下是否安装无误@H_404_5@ @H_404_5@ @H_404_5@ 7.在/android/目录中执行gradle assembleRelease命令,打包后的文件在 android/app/build/outputs/apk目录中,例如app-release.apk。如果打包碰到问题可以先执行 gradle clean 清理一下。@H_404_5@ 如果出现报 unable to process incoming event 'ProcessComplete' <ProgressCompleteEvent>这种错误@H_404_5@ 需要在在混淆文件proguard-rules.pro中加入@H_404_5@ -keep class android.text {* ;}@H_404_5@ -dontwarn android.text.*@H_404_5@ @H_404_5@ 8.将apk发布到各大应用市场(BUILD SUCCESSFUL) 如、应用宝 appstore

猜你在找的React相关文章