【问题标题】:Can't launch application through Android Studio (logcat [DEAD])无法通过 Android Studio 启动应用程序(logcat [DEAD])
【发布时间】:2015-10-26 12:34:20
【问题描述】:

在过去的两天里,我正在开发的应用程序在 logcat 中显示为 [DEAD],当我尝试通过 Android Studio 中的运行按钮启动该应用程序时,一切似乎都很好,除了该应用程序永远不会启动并离开Android Studio 中没有错误消息,除了 [DEAD]。知道这是什么吗?

更新: 我已经能够通过以下方式从 logcat 中删除 [DEAD] 东西:

  • 从设备中删除应用程序
  • 重新启动设备(不应该是这样,因为它在发生之前才刚刚启动,但以防万一)
  • 在 Android Studio 中使缓存失效并重新启动
  • 从 Android Studio 的工具栏中重新运行应用程序

这可能有助于让你重新开始,但我的问题仍然存在。

这是什么?

为什么会这样?

那么正确的解决方法是什么?

【问题讨论】:

  • 您找到解决方案了吗?
  • Invalidate caches and restart in Android Studio 是什么意思?
  • @AlexJolig go to File > Invalidate caches & restart... 在菜单栏中。
  • 当我打开 Android 设备监视器或任何将 adb 连接到设备的外部程序时,我发现了这一点,导致我的 android studio ADB “死”。发生这种情况时,我会转到 android 工具(顶部菜单)并禁用 adb 集成,然后重新启用它。
  • 您是在 Windows 还是 Mac 上运行?我有一个联想 Yoga 2 Pro,它预装了一些名为“PhoneBuddy”的愚蠢应用程序,它内置了一个 adb 实现。有时,它会接管我设备的 ADB 连接。我记得遇到了和你现在一样的错误。如果您运行的是 Windows,请检查您的任务管理器运行服务的 ADB 实例,并确保只有一个。如果有多个,您可能已经找到问题所在。如果您需要更多说明,请告诉我。

标签: android android-studio logcat


【解决方案1】:

以上错误是由于

java.io.IOException

这会导致当前 adb-connection 断开连接并连接到另一个软件发出的新 adb-connection 请求。

java.io.IOException: An established connection was aborted by the software in your host machine

当你启动一个 adb 客户端时,客户端首先会检查是否有一个 adb 服务器进程已经在运行。如果没有,它会启动服务器进程。当服务器启动时,它会绑定到本地 TCP 端口 5037 并侦听从 adb 客户端发送的命令——所有 adb 客户端都使用端口 5037 与 adb 服务器通信。

然后,服务器会建立与所有正在运行的模拟器/设备实例的连接。它通过扫描 5555 到 5585 范围内的奇数端口(模拟器/设备使用的范围)来定位模拟器/设备实例。当服务器找到一个 adb 守护进程时,它会建立一个到该端口的连接。 请注意,每个模拟器/设备实例都会获取一对顺序端口——一个用于控制台连接的偶数端口和一个用于 adb 连接的奇数端口。

以上信息也可以从它的文档中看到 http://developer.android.com/tools/help/adb.html

当一个新应用使用相同的连接时,您的 Android Studio 应用会在 logcat 中报告 DEAD。 要解决此问题,请使用 adb kill-server 命令

adb kill-server  //Terminates the adb server process.

然后重新运行您的应用程序。

【讨论】:

    【解决方案2】:

    这表明您完全停止了您的设备上的应用程序,或者您可能遇到了一些错误并且不幸地停止了应用程序。

    只需尝试拔下设备关闭模拟器并重新连接。

    【讨论】:

      【解决方案3】:

      我的解决方法:更换调试设备。 我最近遇到了这个问题,并且我一直在努力解决它很长时间。 我用的是3.0,电脑i7+16G+ SSD,配置不会有问题。 期间试过重启电脑,没有效果。网上的方法试了一些,还是不行。 我一直以为是as问题,然后我就可以调试机器了。 调试手机是7.0系统。 root后进入adb shell,发现命令行没有响应。手机壳卡死卡死卡死。 as run 将直接卡在那里。 as interface的key是不可点击的,bug应该交给as。

      【讨论】:

      • 不确定这是否能以任何身份回答问题。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-03-21
      • 2010-11-25
      • 1970-01-01
      • 2015-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多