(1) RN安卓app名稱和圖標(biāo)修改:
-
(1)修改圖標(biāo)和名稱:
找到 根目錄/android/app/src/main/res
效果圖.png -
(2) 關(guān)掉模擬器,關(guān)掉服務(wù)器,關(guān)掉cmd后重啟即可
效果圖
(2) RN安卓打包上線
(1) 生成一個簽名密匙
- 用 keytool 命令生成一個私有密鑰,
在Windows上keytool命令放在JDK的bin目錄中(比如C:\Program Files\Java\jdkx.x.x_x\bin),你需要在命令行中先進(jìn)入那個目錄才能執(zhí)行如下命令。
在JDK的bin目錄中執(zhí)行以下命令:
----------------------------
$ keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
----------------------------
以上這條命令會要求你輸入密鑰庫(keystore)和對應(yīng)密鑰的密碼,
然后設(shè)置一些發(fā)行相關(guān)的信息。最后它會生成一個叫做my-release-key.keystore的密鑰庫文件。
----------------------------
在運行上面這條語句之后,密鑰庫里應(yīng)該已經(jīng)生成了一個單獨的密鑰,有效期為10000天。
----------------------------
上面的 my-release-key 這個名字可以自己取名,同時my-key-alias 也是自己取名,
其中第二個名稱 alias 參數(shù)后邊的別名,在后面你在為應(yīng)用簽名的時候需要用到,所以暫時記錄一下這個別名。
----------------------------
截圖如下:
- 需要注意:
(1)如果JDK的bin文件夾在c盤需要用管理員方式打開。
(2)輸入密匙口令看不到輸入結(jié)果,看上去沒有反應(yīng),不用管,寫好之后回車
keytool命令.png
(2) 設(shè)置gradle變量
- 把my-release-key.keystore文件放到你工程中的 android/app 文件夾下。
- 在 (項目根目錄/android文件夾) 中找到 gradle.properties(沒有這個文件你就創(chuàng)建一個),添加如下的代碼(注意把其中的****替換為相應(yīng)密碼),注意:直接在最后面添加下面的代碼即可,原來的代碼不要管。
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=*****
MYAPP_RELEASE_KEY_PASSWORD=*****
--------------------------------
上面的這些會作為全局的gradle變量,我們在后面的步驟中可以用來給應(yīng)用簽名。
(3) 添加簽名到項目的gradle配置文件
- 編輯你項目目錄下的(項目根目錄/android/app/build.gradle),添加如下的簽名配置:
...
android {
...
defaultConfig { ... }
signingConfigs {
release {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release
}
}
}
...
像下面這樣寫也可以:
signingConfigs {
release {
storeFile file("my-release-key.keystore")
storePassword "*****"
keyAlias "my-key-alias"
keyPassword "*****"
}
}
...
buildTypes {
release {
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
signingConfig signingConfigs.release
}
}
------------------------------------------------
//*****這些星星就是你設(shè)置的密匙庫口令
(4) 生成發(fā)行APK包
- cmd命令行 進(jìn)入(項目根目錄/android)目錄下執(zhí)行以下命令:
gradlew assembleRelease
------------------------------
注意:
(1) 以上是windows平臺的做法
(2) 打包前請保證所有的圖片都以英文命名,否則會導(dǎo)致打包不成功
打包成功.png
打包成功后apk會放在:
android\app\build\outputs\apk下的app-release.apk是打包好的APK
如下圖:
app-release.apk存放位置
http://www.lxweimin.com/p/2a4e86a18bfb
官網(wǎng)http://reactnative.cn/docs/0.47/signed-apk-android.html#content