React-Native之打包發佈(Android)

React-Native之打包發佈(Android)

一,介紹與需求

 移動端打包發佈到應用市場node

二,發佈配置

注意:如下全部操做都在win10下進行,React Native版本0.59.5,android-studio 版本 3.2react

1,生成簽名

1 keytool -genkey -v -keystore app.keystore -alias yingqi -keyalg RSA -keysize 2048 -validity 10000

附加說明:android

-genkey    生成文件 ios

-keystore  文件名 算法

-alias         別名react-native

-keyalg     加密算法android-studio

-validity    有效期(單位是天) app

輸入如上命令之後,出現如下步驟:工具

注意:輸入密鑰庫口令【很重要,要記住】測試

生成的的keystore文件默認是在項目的根目錄中,以下圖所示:

 

2,在gradle文件中添加簽名配置

把app.keystore文件放到你工程中的android/app文件夾下。

打開編輯項目目錄下的android/app/build.gradle文件,添加以下的簽名配置:

 1 ...
 2 android {
 3     ...
 4     defaultConfig { ... }
 5     signingConfigs {
 6         release {
 7             keyAlias 'yingqi' //別名
 8             keyPassword '123456' //密鑰密碼 以前設置祕鑰口令
 9             storeFile file('app.keystore') //my-release-key.keystore文件的絕對路徑
10             storePassword '123456' //存儲密碼
11         }
12     }
13     buildTypes {
14         release {
15             ...
16             minifyEnabled enableProguardInReleaseBuilds // 在 當前文件中,找到變量 enableProguardInReleaseBuilds ,將其值修改成 true
17             signingConfig signingConfigs.release // 引用簽名
18         }
19     }
20 }
21 ...

 3,修改應用名稱

打開編輯項目目錄下的android/app/src/main/res/values/strings.xml文件,修更名稱

 4,修改應用icon

將以下文件夾中的icon替換成須要修改的圖標便可,注意icon大小保持一致

 5,代碼混淆

啓用Proguard代碼混淆來縮小APK文件的大小(保護源代碼,縮小APK包大小)
Proguard是一個Java字節碼混淆壓縮工具,它能夠移除掉React Native Java (和它的依賴庫中)中沒有被使用到的部分,最終有效的減小APK的大小。
重要:每次啓用Proguard以後,必須再次全面地測試你的應用。Proguard有時候須要爲你引入的每一個原生庫作一些額外的配置。參見app/proguard-rules.pro文件。

在android/app/build.gradle文件中,找到enableProguardInReleaseBuilds而後修改def enableProguardInReleaseBuilds = true

 6,打包命令配置

1   "scripts": {
2     "start": "node node_modules/react-native/local-cli/cli.js start",
3     "bundle-ios": "node node_modules/react-native/local-cli/cli.js bundle --entry-file index.js  --platform ios --dev false --bundle-output ./ios/main.jsbundle --bundle-encoding utf8 --assets-dest ./ios",
4     "bundle-android": "cd ./android && ./gradlew assembleRelease",
5     "bundle-win-android": "cd android && gradlew assembleRelease",
6     "test": "jest"
7   },

運行打包與成功效果

相關文章
相關標籤/搜索