欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Taro打包Android?apk過程詳解

 更新時間:2022年02月07日 17:32:26   作者:廈門在乎科技  
這篇文章主要為大家介紹了Taro打包Android?apk的過程及詳解步驟,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

首先,我們使用使用命令創(chuàng)建模板項目,創(chuàng)建的命令如下。

taro init myApp

然后,使用 yarn 或者 npm install安裝依賴包,并使用下面的命令編譯Taro項目。

yarn dev:rn

啟動后會開啟一個監(jiān)聽的進程。

不過,細心的你可能會發(fā)現(xiàn),使用taro init命令初始化的項目是沒有原生模塊支持的,原來Taro使用了一個殼子工程,首先使用下面的命令下載殼子工程taro-native-shell,如下所示。

git clone git@github.com:NervJS/taro-native-shell.git

在taro-native-shell個目錄使用 yarn 或者 npm install 安裝依賴,并使用下面的命令啟動殼子工程。

react-native run-android

不過,啟動后報了如下的錯誤:

error: bundling failed: NotFoundError: Cannot find entry file index.js in any of the roots: ["/Users/mac/Taro/work/taro-yanxuan"]
    at DependencyGraph.getAbsolutePath (/Users/mac/Taro/work/taro-yanxuan/node_modules/metro/src/node-haste/DependencyGraph.js:317:11)
    at /Users/mac/Taro/work/taro-yanxuan/node_modules/metro/src/DeltaBundler/DeltaCalculator.js:280:416
    at Generator.next (<anonymous>)
    at step (/Users/mac/Taro/work/taro-yanxuan/node_modules/metro/src/DeltaBundler/DeltaCalculator.js:11:445)
    at /Users/mac/Taro/work/taro-yanxuan/node_modules/metro/src/DeltaBundler/DeltaCalculator.js:11:605
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
上面報錯的意思是找不到RN的入口文件index.js。對于這個問題,只需要將 MainApplication.java 里面的 getJSMainModuleName 修改改為:

rn_temp/index

即可,因為Taro打的包在rn_temp目錄下,最新的 react-native-shell 已修復(fù)。

修改后,重新執(zhí)行react-native run-android命令。

不過,由于項目是0.60.0版本以下的,所以我在運行的時候又報了下面的錯誤。

React Native version mismatch
javascript version 0.55.4
Native version 0.64.0

這是因為react-native-shell 是0.64.0,而我的RN項目是0.55.4,所以只能升級RN項目或者降級
react-native-shell 。如果沒有任何錯誤,接下來就可以制作離線的apk包了。
首先,你需要生成Android的密鑰文件,關(guān)于如何生成密鑰文件,可以自行查找相關(guān)的資料,把生成的密鑰文件拷貝到工程中的android/app文件夾中。然后,在在/android/gradle.properties中添加如下常量代碼。

MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=*****
MYAPP_RELEASE_KEY_PASSWORD=*****

然后,在app/build.gradle文件中添加如下代碼。

release {
            if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
                storeFile file(MYAPP_UPLOAD_STORE_FILE)
                storePassword MYAPP_UPLOAD_STORE_PASSWORD
                keyAlias MYAPP_UPLOAD_KEY_ALIAS
                keyPassword MYAPP_UPLOAD_KEY_PASSWORD
            }
        }

接下來,把前面生成的rn_temp文件復(fù)制到taro-native-shell殼子工程的android文件夾下,修改MainApplication里面的代碼,如下所示。

@Override
    protected String getBundleAssetName()  {
      return "./android/rn_temp/index";
    }
  };

然后,在android/app/build.gradle中修改添加如下代碼。

project.ext.react = [
        entryFile: "android/rn_temp/index.js",
        cliPath:"node_modules/react-native/cli.js"
]

然后,執(zhí)行如下命令執(zhí)行生成index.bundle 文件,如下所示。

node ./node_modules/react-native/local-cli/cli.js bundle --entry-file ./android/rn_temp/index.js --bundle-output ./android/rn_temp/index.bundle --assets-dest ./rn_bundle --dev false

最后,在Android的根目錄下執(zhí)行打包命令。

./gradlew assembleRelease

打包完成后,就可以在android/app/build/outputs中看到簽名包。

以上就是Taro打包Android apk過程詳解的詳細內(nèi)容,更多關(guān)于Taro打包Android apk的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Android使用RollViewPager實現(xiàn)輪播圖

    Android使用RollViewPager實現(xiàn)輪播圖

    這篇文章主要為大家詳細介紹了Android使用RollViewPager實現(xiàn)輪播圖,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • 詳解ViewBinding用法

    詳解ViewBinding用法

    這篇文章主要介紹了ViewBinding用法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • Android開發(fā)可添加頭尾的RecycleView的實現(xiàn)

    Android開發(fā)可添加頭尾的RecycleView的實現(xiàn)

    這篇文章主要為大家介紹了Android開發(fā)可添加頭尾的RecycleView的實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • Android客戶端程序Gradle如何打包

    Android客戶端程序Gradle如何打包

    這篇文章主要介紹了Android客戶端程序Gradle如何打包 的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • Android 靜默安裝和卸載的方法

    Android 靜默安裝和卸載的方法

    本篇文章主要介紹了Android 靜默安裝和卸載的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Android 匿名內(nèi)存深入分析

    Android 匿名內(nèi)存深入分析

    這篇文章主要為大家介紹了Android 匿名內(nèi)存深入分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • Android 指紋功能實例代碼

    Android 指紋功能實例代碼

    本文通過一個demo給大家介紹了android指紋功能,代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-12-12
  • android通過自定義toast實現(xiàn)懸浮通知效果的示例代碼

    android通過自定義toast實現(xiàn)懸浮通知效果的示例代碼

    這篇文章主要介紹了android通過自定義toast實現(xiàn)懸浮通知效果,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-10-10
  • Android編程獲取網(wǎng)絡(luò)連接方式及判斷手機卡所屬運營商的方法

    Android編程獲取網(wǎng)絡(luò)連接方式及判斷手機卡所屬運營商的方法

    這篇文章主要介紹了Android編程獲取網(wǎng)絡(luò)連接方式及判斷手機卡所屬運營商的方法,涉及Android針對網(wǎng)絡(luò)的判斷及本機信息的獲取技巧,需要的朋友可以參考下
    2016-01-01
  • adb無法連接雷電模擬器問題的解決方式

    adb無法連接雷電模擬器問題的解決方式

    雷電模擬器優(yōu)點是可設(shè)置的選項要比天天模擬器多,下面這篇文章主要給大家介紹了關(guān)于adb無法連接雷電模擬器問題的解決方式,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-02-02

最新評論