2017-02-21 107 views
0

我在React Native應用程序中遇到了非常慢的編譯時間和非常差的android調試性能,而在構建在30秒左右的時間裏,啓用遠程調試有點可管理。我不知道我改變什麼造成這一點,但這裏有一些我看到的症狀運行react-native run-android時:反應原生android編譯非常慢(> 3分鐘)

1)所有的依賴正在安裝作爲單獨的APK是我的設備

。對於在我的應用程序的每依賴,我看到了下面的構建日誌:

... 
Installing APK 'react-native-toast-debug-androidTest.apk' on 'Google Nexus 5X - 6.0.0 - API 23 - 1080x1920 - 6.0' for react-native-toast:debugAndroidTest 
Installed on 1 device. 
... 
Installing APK 'react-native-vector-icons-debug-androidTest.apk' on 'Google Nexus 5X - 6.0.0 - API 23 - 1080x1920 - 6.0' for react-native-vector-icons:debugAndroidTest 
Installed on 1 device. 
... 

2)錯誤的編譯工具版本是我們ED

此警告可能會在每個依賴項目指定的生成工具版本造成的,而是:

Running dex in-process requires build tools 23.0.2. 
For faster builds update this project to use the latest build tools. 

當我的build.gradle我已經定義了構建工具版本23.2.3

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.2.3" 

3)亞行調用失敗

在構建結束時,顯示此消息,並且應用程序不會自動設備上推出:

adb invocation failed. Do you have adb in your PATH? 

即使我在PATH(.bashrc)中

export PATH="/Users/Juuso/Library/Android/sdk/platform-tools":$PATH 

已經ADB ......,我能跑adb命令在我的項目目錄中

回答

0

如果您曾經像我一樣在android/app/build.gradle中添加buildTypes或productFlavors。

不運行react-native run-android

使用react-native run-anroid --variant [flavorBuildType]代替

flavorBuildType可以,任何以下。

  1. 調試
  2. 發佈
  3. flavor1Debug
  4. flavor2Release