React Native App设置amp;Android版发布
?React Native系列
《邏輯性最強的React Native環境搭建與調試》?
《ReactNative開發工具有這一篇足矣》?
《解決React Native unable to load script from assets index.android.bundle on windows》?
《React Native App設置&Android版發布》?
一、設置APP信息
1.設置包名、版本號
目錄:~/android/app/build.gradle
2.設置應用名
目錄:~/android/app/src/main/res/values/strings.xml
3.設置圖標
在~/android/app/src/main/res/下,你會看到一系列mipmap開頭的文件夾(默認是4個),按照里面ic_launcher.png的尺寸,生成四個版本的icon并替換。
有時候圖標修改會遲遲不生效,此時從手機上徹底刪掉原應用,刪掉文件夾android/build和android/app/build,然后再重新打包。如圖:
二、打包發布android應用
1.生成簽名秘鑰
在Windows上keytool命令放在JDK的bin目錄中(比如C:\Program Files\Java\jdkx.x.x_x\bin),你可能需要在命令行中先進入那個目錄才能執行此命令:
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
需要輸入兩次密碼,它會生成一個叫做my-release-key.keystore的密鑰庫文件,有效期為10000天,執行界面如圖:
2.設置gradle變量
①.把my-release-key.keystore文件放到你工程中的~/android/app文件夾下。
②.編輯~/android/gradle.properties,添加如下的代碼(注意把其中的****替換為相應密碼)
MYAPP_RELEASE_STORE_FILE=my-release-key.keystoreMYAPP_RELEASE_KEY_ALIAS=my-key-aliasMYAPP_RELEASE_STORE_PASSWORD=*****MYAPP_RELEASE_KEY_PASSWORD=*****如圖:
3.添加簽名到項目的gradle配置文件
目錄~/android/app/build.gradle,添加如下的簽名配置:
...android {...defaultConfig { ... }signingConfigs {release {storeFile file(MYAPP_RELEASE_STORE_FILE)storePassword MYAPP_RELEASE_STORE_PASSWORDkeyAlias MYAPP_RELEASE_KEY_ALIASkeyPassword MYAPP_RELEASE_KEY_PASSWORD}}buildTypes {release {...signingConfig signingConfigs.release}}}...如圖:
4.發行應用
執行命令:?
cd android && gradlew assembleRelease生成的APK文件位于android/app/build/outputs/apk/app-release.apk
5.啟用Proguard代碼混淆來縮小APK文件的大小(可選)
進入目錄~/android/app/build.gradle,設置minifyEnabled選項為true:
def enableProguardInReleaseBuilds = true如圖:
Proguard是一個Java字節碼混淆壓縮工具,它可以移除掉React Native Java(和它的依賴庫中)中沒有被使用到的部分,最終有效的減少APK的大小。
重要:啟用Proguard之后,你必須再次全面地測試你的應用。Proguard有時候需要為你引入的每個原生庫做一些額外的配置。參見app/proguard-rules.pro文件。
?
總結
以上是生活随笔為你收集整理的React Native App设置amp;Android版发布的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vuejs深入浅出—基础篇
- 下一篇: 面试题:为什么Java中的字符串对象是不