React Native android构建非常慢(> 3min)

时间:2017-02-21 15:34:03

标签: android build react-native react-native-android

在我的React Native应用程序中,我在Android上遇到非常慢的构建时间和非常差的调试性能,而在构建在大约30秒内微风之前,运行启用远程调试的应用程序有点可管理。我不确定我改变了什么导致这种情况,但这里有一些我在跑步react-native run-android时看到的症状:

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)使用了错误的构建工具版本

此警告可能是由每个依赖项目中指定的构建工具版本引起的,但是:

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调用失败

在构建结束时,会显示此消息,并且我的设备上的应用程序不会自动启动:

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

即使我在PATH(.bashrc)中有adb

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

...我可以在项目目录中运行adb命令

1 个答案:

答案 0 :(得分:0)

如果您像我一样在android / app / build.gradle中添加buildTypes或productFlavor。

不要运行react-native run-android

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

flavorBuildType可以是以下任何一种。

  1. 调试
  2. 释放
  3. flavor1Debug
  4. flavor2Release