日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

react native 生成APK

發(fā)布時(shí)間:2024/4/14 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 react native 生成APK 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

參考地址:React native Android 命令 打包apk

首先:嘗試使用模擬器測(cè)試?

這里是因?yàn)樾枰_認(rèn)目前在電腦上的模擬器是可以正常運(yùn)行的,并且,開(kāi)發(fā)React native的應(yīng)用程序,肯定是需要做一些本地測(cè)試的

?

第一:生成簽名密鑰

這一步的操作主要是生成需要的簽名密鑰,供android調(diào)用,生成的文件待用

在項(xiàng)目根目錄運(yùn)行以下命令,輸入的密碼是比較簡(jiǎn)單的1234567890

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

?

第二:設(shè)置gradle

分兩步:

第一步:配置全局的gradle變量

打開(kāi)C:\Users\chenwes\應(yīng)該是可以看到一個(gè)文件夾.gradle,打開(kāi)后,應(yīng)該也有一個(gè)文件gradle.properties,如果不存在該文件,可以手動(dòng)創(chuàng)建,并在該文件中輸入以下內(nèi)容

TEST_RELEASE_STORE_FILE=my-release-key.keystore
TEST_RELEASE_KEY_ALIAS=my-key-alias
TEST_RELEASE_STORE_PASSWORD=1234567890
TEST_RELEASE_KEY_PASSWORD=1234567890

?

第二步:給項(xiàng)目添加簽名

將剛才生成的簽名文件my-release-key.keystore復(fù)制至react native項(xiàng)目中的android\app文件夾中

并手動(dòng)編輯android\app文件夾下的build.gradle文件,

... android {...defaultConfig { ... }signingConfigs {release {storeFile file (TEST_RELEASE_STORE_FILE)storePassword TEST_RELEASE_STORE_PASSWORDkeyAlias TEST_RELEASE_KEY_ALIASkeyPassword TEST_RELEASE_KEY_PASSWORD}}buildTypes {release {...signingConfig signingConfigs.release}} } ...

以下是我本地修改過(guò)的build.gradle的文件

?

第三步:生成APK

第一次沒(méi)有成功,

在項(xiàng)目的根目錄,運(yùn)行命令

cd android #如果你已經(jīng)在anroid目錄,則不需要該命令gradlew assembleRelease

以下這種方法適合對(duì)于,在項(xiàng)目的android/app下有一個(gè)react.gradle文件的情況,但我的沒(méi)有,馬上進(jìn)行第二次嘗試

第二次嘗試

因?yàn)樵谖业碾娔X中,在項(xiàng)目的android/app下沒(méi)有react.gradle文件,需要按以下流程來(lái)處理

  1:到D:\test\TestAndroidApk\android\app\src\main,創(chuàng)建一個(gè)assets的空文件夾

  2:打開(kāi)命令窗口,定位到項(xiàng)目的根目錄,運(yùn)行命令,運(yùn)行完成后,應(yīng)該可以在項(xiàng)目目錄下的D:\test\TestAndroidApk\android\app\src\main\assets看到兩個(gè)文件,即index.bundle和index.bundle.meta兩個(gè)文件,生成的這兩個(gè)文件,會(huì)打包至APK中。

react-native bundle --platform android --dev false --entry-file index.js? --bundle-output android/app/src/main/assets/index.android.bundle? --assets-dest android/app/src/main/res/
#這里注意一下參數(shù)--entry-file index.js 因?yàn)镽eact Native以前的版本會(huì)生成兩個(gè)文件,現(xiàn)在的版本0.52.0已經(jīng)變成只有一個(gè)文件,這里需要注意,參考別人的文章時(shí)需要注意。

  3:命令窗口進(jìn)入至android目錄,運(yùn)行命令

gradlew assembleRelease

  4:最后需要清理,運(yùn)行命令

gradlew clean

?

?


?

在生成APK時(shí),如果遇到錯(cuò)誤,不要慌,先仔細(xì)對(duì)一下各項(xiàng)參數(shù)是否都可以對(duì)應(yīng)到

1:在生成簽名文件時(shí),四個(gè)參數(shù)是否與C:\Users\chenwes\.gradle文件夾中的gradle.properties設(shè)置的四個(gè)參數(shù)是不是一致。

2:C:\Users\chenwes\.gradle文件夾中的gradle.properties設(shè)置的四個(gè)參數(shù)要與?D:\test\TestAndroidApk\android\app文件夾中的build.gradle中的signingConfigs? =》?release節(jié)點(diǎn)中的一致(gradle.properties設(shè)置的真實(shí)的值,且是全局的,build.gradle的是一個(gè)引用值)

3:D:\test\TestAndroidApk\android\app文件夾中的build.gradle中的buildTypes =》?release是不是加入了signingConfig signingConfigs.release

?

簡(jiǎn)單的步驟總結(jié):

生成APK1.生成tqstablet.keystore文件,并復(fù)制到~\tqs-tablet\android\app文件夾 keytool -genkey -v -keystore tqstablet.keystore -alias tqstablet -keyalg RSA -keysize 2048 -validity 100002.gradle全局文件(不存在則新增) C:\Users\chenwes\.gradle增加內(nèi)容 TQSTABLET_RELEASE_STORE_FILE=tqstablet.keystore TQSTABLET_RELEASE_STORE_PASSWORD=****** TQSTABLET_RELEASE_KEY_ALIAS=tqstablet TQSTABLET_RELEASE_KEY_PASSWORD=******3.~\tqs-tablet\android\app\src\main創(chuàng)建assets空文件夾4.在根目錄執(zhí)行react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/ 應(yīng)該會(huì)在~\tqs-tablet\android\app\src\main\assets生成index.android.bundle和index.android.bundle.meta5.在根目錄的android文件夾執(zhí)行g(shù)radlew assembleRelease ~\tqs-tablet\android\app\build\outputs\apk生成APK完成6.在根目錄的android文件夾執(zhí)行g(shù)radlew clean清空

?

在模擬器使用生成的APK

?

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/weschen/p/8358952.html

總結(jié)

以上是生活随笔為你收集整理的react native 生成APK的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。