ReactNative生成签名APK
2015-11-30 08:23
666 查看
ReactNative项目最终要面向市场, 生成签名的Apk应用程序, 并发布到各大市场. 官网已经提供了参考, 非常简单, 现在啰嗦几句.
设置签名
生成Release包模式.
启用Proguard.
注意
在
即可生成Release包, 并安装入手机, 最终包的位置.
参考
ReactNative项目开发模式已经很成熟了, 我们可以把开发完的项目, 通过以上方式, 生成最终线上的包进行发布.
OK, Enjoy it!
1. 去掉开发模式
修改主页入口,setUseDeveloperSupport(false), 去掉开发者支持功能.
mReactInstanceManager = ReactInstanceManager.builder() .setApplication(getApplication()) .setBundleAssetName("index.android.bundle") .setJSMainModuleName("index.android") .addPackage(new MainReactPackage()) .setUseDeveloperSupport(false) .setInitialLifecycleState(LifecycleState.RESUMED) .build();
2. Gradle
Gradle是生成Apk的工具, 配置签名和Proguard.android { ... signingConfigs { release { storeFile file('key/SpringRainKey') storePassword 'chunyu' keyAlias 'chunyu' keyPassword 'chunyu' } } buildTypes { release { signingConfig signingConfigs.release minifyEnabled true // Set this to true to enable Proguard proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" } } }
设置签名
signingConfigs:
存储文件(storeFile)位置,
存储密码(storePassword),
key别名(keyAlias),
key密码(keyPassword).
生成Release包模式.
signingConfig signingConfigs.release
启用Proguard.
minifyEnabled true
注意
signingConfigs需要在
buildTypes后面, 否则找不到方法.
3. Proguard内容
这个官方文档没有提到, 不配置会报错.java.lang.NoSuchMethodError: no static or non-static method "Lcom/facebook/react/bridge/ReadableNativeArray;.getType(I)Lcom/facebook/react/bridge/ReadableType;"
在
proguard-rules.pro中, 保留React的所有代码, 添加在最后.
# 禁止混淆react -keep public class com.facebook.react.** { public protected *; }
4. 执行
在android文件夹内执行
./gradlew installRelease
即可生成Release包, 并安装入手机, 最终包的位置.
./android/app/build/outputs/apk/app-release.apk
参考
ReactNative项目开发模式已经很成熟了, 我们可以把开发完的项目, 通过以上方式, 生成最终线上的包进行发布.
OK, Enjoy it!
相关文章推荐
- 详解HDFS Short Circuit Local Reads
- SQL Server Native Client下载 SQL Server Native Client安装方法
- android 使用虚拟机安装apk(图文教程)
- 超级给力的JavaScript的React框架入门教程
- 由ReactJS的Hello world说开来
- BAT批处理一键生成APK包脚本分享
- 配置apache支持apk ipk下载的方法
- Android实现检查并下载APK更新、安装APK及获取网络信息的方法
- Android应用开发之将SQLite和APK一起打包的方法
- lua脚本实现自动生成APK包
- php获取apk包信息的方法
- php自定义apk安装包实例
- Android快速分析apk工具aapt的使用教程
- 如何安装系统认证签名过的APK
- jarsigner重新签名apk无法安装的解决方法
- 解决在eclipse中将android项目生成apk并且给apk签名的实现方法详解
- unity3d发布apk在android虚拟机中运行的详细步骤(unity3d导出android apk)
- 教你如何使用platform密钥对apk进行签名
- 深入理解JavaScript的React框架的原理
- Android APK使用Debug签名重新打包 Eclipse更改默认Debug签名