当前位置: 首页>>技术问答>>正文


反应原生errorTimeout获取设备列表。在ubuntu上运行hello world时

, ,

问题描述

我打印react-native run-android并获得以下输出:

FAILURE: Build failed with an exception.

  • What went wrong: Execution failed for task ‘:app:installDebug’.

    com.android.builder.testing.api.DeviceException: Timeout getting device list.

  • Try: Run with –stacktrace option to get the stack trace. Run with –info or –debug option to get more log output.

BUILD FAILED

Total time: 1 mins 11.385 secs Could not install the app on the device, read the error above for details. Make sure you have an Android emulator running or a device connected and have set up your Android development environment: https://facebook.github.io/react-native/docs/android-setup.html

我有genymotion模拟器运行。我已经定义了android home和path

export ANDROID_HOME=/home/jonstark/Documents/android/
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

在sdk管理器中,我已经下载了所有必需的包。我该怎么办?

最佳解决办法

@Gaurang解决的问题是 ADB 的一个问题。构建失败的原因是ADB超时查询可用设备。

以下步骤为我解决了这个问题……

  1. 在Genymotion中,转到设置> ADB (标签)

  2. 选择广播选项“使用自定义Android SDK工具”,然后添加Android SDK的路径

  3. 重新启动Genymotion(可能不是完全必要的,但我做了,但它有效)

  4. 如果上述步骤不起作用,请尝试重新启动计算机,因为评论者已声明这对他们有效。 [8月10日补充]

android,ubuntu,react-native

我发现这是因为我意识到我的adb服务器没有启动。在这篇SOF文章(Adb won’t start)之后,我将目录更改为我的{ANDROID_SDK_FOLDER}/tools并运行adb kill-server然后仅运行adb start-server以接收错误adb server version (32) doesn't match this client (36)。在此搜索引导我阅读以下文章,从而得出解决方案。希望它可以帮助别人:)

参考:http://nmp90.com/2016/04/android-adb-server-version-32-doesnt-match-client-genymotion/

次佳解决办法

首先检查您使用的是哪个adb。

$ which adb


如果你这样:

/home/wakematta/Android/Sdk/platform-tools/adb

Follow this steps


如果你这样:

/usr/bin/adb

你有 ADB 的特权。您需要运行此命令来删除不必要的adb:

$ sudo apt-get autoremove android-tools-adb android-tools-fastboot

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/7190.html,未经允许,请勿转载。