React Native安卓代码混淆和打包(转)

原文地址 http://www.cnblogs.com/pengsi/p/7121344.html

一上午就整了个React Native的打包,中间还遇到各种问题,这里还是记录下吧:
文档链接: http://reactnative.cn/docs/0.45/signed-apk-android.html#content
打包步骤如下:
1> cd 项目目录;
2>执行以下命令:

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

3>执行:
1

keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000

会出现以下要求输入一系列信息:


React Native安卓代码混淆和打包(转)_第1张图片

完成之后,显示如下:


React Native安卓代码混淆和打包(转)_第2张图片

4>下载好之后,把 my-release-key.keystore 放到android/app目录下面;
5>修改android/app/build.gradle文件如下:

注意:
storeFile和密码和你设置的进行一致. 这是简化版的设置,也可以安装官网的来设置

...android {
   ...
  defaultConfig { ... }
  signingConfigs{
          release{
                storeFile file("my-release-key.keystore")
                storePassword "123456"
                keyAlias "my-key-alias"
                keyPassword "123456"
            }
   }
   buildTypes {
         release {...signingConfig signingConfigs.release}
   }
}

切记不要忘记 signingConfig signingConfigs.release 别问为什么,血的教训。。。。

6>修改完成执行 cd android && ./gradlew assembleRelease 命令自动下载文件 (也可以在此步操作之前 运行 react-native run-android --variant=release 测试应用是否有问题);
7>出现以下界面表示打包成功:

React Native安卓代码混淆和打包(转)_第3张图片

安装好的apk 在文件 android/app/build/outputs/apk 里面.

可能出现的错误:


React Native安卓代码混淆和打包(转)_第4张图片

解决方法:
在local.properties文件里设置sdk和ndk的路径即可.


React Native安卓代码混淆和打包(转)_第5张图片

ps:
sdk路径可以在SDK Manager中查看
React Native安卓代码混淆和打包(转)_第6张图片

[图片上传中。。。(9)]

ndk路径没有安装的可以直接下载安装下即可<已经安装了的不知道路径也可以重新下载安装>
ndk下载链接: https://developer.android.google.cn/ndk/downloads/index.html
解决错误,再次执行第6>步骤,打包成功.

补充一下代码混淆:
参考链接:http://www.cnblogs.com/zhen-android/p/6014336.html

混淆前是9.7M,混淆后是8.7M,注意,混淆打包后的apk文件大小会比不使用混淆要小。

关于百度地图打包后,不显示的问题请参考我的另一篇文章
《打包后百度地图无法正常显示》

你可能感兴趣的:(React Native安卓代码混淆和打包(转))