【问题标题】:Error: device offline错误:设备离线
【发布时间】:2012-05-27 16:02:15
【问题描述】:

模拟器正在运行。但是当我在 shell 中写 adb shell 时,我得到:

错误:设备离线

这是什么原因?我该如何摆脱它?

【问题讨论】:

  • @Lalit Poptani 你说的重启adb是什么意思?
  • @Lalit Poptani 那是什么?我正在运行模拟器,然后启动 shell 并写了adb shell。然后我得到了我提到的错误
  • 尝试adb kill-server,然后尝试adb start-server。运行adb devices 以确保您的模拟器在列表中并且您应该被设置。
  • 你写的时候有没有设备>adb devices

标签: android debugging android-emulator adb


【解决方案1】:

如果“adb devices”列出了您的设备,但作为“离线”,您的路径可能会导致旧版本的 adb(例如 1.0.29)在最新的 Android 4 设备上存在问题。 确保“adb 版本”返回 1.0.31 或更高版本。 从 Android 4.2.2 开始,您必须在您的设备上确认它已连接到受信任的计算机。它适用于 adb 1.0.31 及更高版本。

【讨论】:

  • +1 谢谢!很好的提示。我忘记更新我的 Android SDK 再次。我认为第一次更新获取了所有新内容。但它没有。所以在第二次和第三次更新运行之后它就起作用了。
【解决方案2】:

它曾经发生在我身上。我刚刚重启了设备,这解决了我的问题。

【讨论】:

  • 不需要重启手机。如果通过 TCP 连接,只需拔下并重新插入,或者禁用并重新启用 WiFi。
【解决方案3】:

当我遇到同样的错误时,我只是拔掉插头再插上它,错误就消失了。

【讨论】:

    【解决方案4】:

    我重启了我的电脑,同时我也重启了手机。 adb devices 返回正常。

    【讨论】:

      【解决方案5】:

      尝试运行:

      adb kill-server
      adb start-server
      

      设备仍然离线,请重启设备。

      【讨论】:

        【解决方案6】:

        方法一:

        在你的 linux 终端中运行这个命令

        sudo adb kill-server
        sudo adb devices
        

        在您的 CMD 中运行此命令

        adb kill-server
        adb devices
        

        “adb devices”结果必须显示任何具有 id 的设备。如果您离线而不是 id 意味着您需要在标签中授予权限。一旦您在 android 中启用 USB 调试并第一次连接设备,您将收到一个警告对话框以授予权限。如果您没有收到任何弹出窗口,请单击“开发人员”选项中的“撤销 USB 权限”尝试一次。

        方法二:

        将设备连接模式从媒体更改为相机,有时这对我有帮助。

        方法三:

        更新 adb 和设备驱动程序。

        【讨论】:

        • 我尝试了很多方法,包括重新安装 Android Studio。这是唯一有帮助的:开发人员设置中的“撤销 USB 权限”-> 插入我的设备-> 再次在警报对话框中授予权限-> 完成。
        【解决方案7】:

        如果您是通过 USB 连接,请拔下并重新插入。

        如果您通过 WiFi 连接,请在手机上禁用并重新启用 WiFi。

        【讨论】:

          【解决方案8】:

          如果您使用的是 Linux 或 Mac,并且假设离线设备是“emulator-5554”,您可以运行以下命令:

          netstat -tulpn|grep 5554
          

          产生以下输出:

          tcp        0      0 127.0.0.1:5554          0.0.0.0:*               LISTEN      4848/emulator64-x86
          tcp        0      0 127.0.0.1:5555          0.0.0.0:*               LISTEN      4848/emulator64-x86
          

          这告诉我进程 id 4848 仍在侦听端口 5554。您现在可以使用以下命令终止该进程:

          sudo kill -9 4848
          

          幽灵离线设备已不复存在!

          【讨论】:

            【解决方案9】:

            确保您是超级用户.. 代替“adb start-server”执行“sudo adb start-server”,输入您的密码(它不会回显),然后按 Enter。 然后,“sudo adb devices”,它将显示为在线。

            【讨论】:

              【解决方案10】:

              我两次遇到这种情况。我第一次在我的电脑上使用命令“adb kill-server”,然后重新启动了android设备。有效。但是第二次该方法不再起作用。这次我断开并重新连接了网络。它奏效了。

              【讨论】:

                【解决方案11】:

                这发生在运行 Ubuntu 19.04 和 Android 9 的我身上。我通过关闭开发人员选项然后重新打开来解决此问题。并确保那里也允许 USB 调试。

                【讨论】:

                  【解决方案12】:

                  安装此tool (link) 并尝试以下代码,不要忘记连接设备并注意任何消息。

                  cd .... platform-tools/
                  
                  adb kill-server
                  adb start-server
                  

                  【讨论】:

                    【解决方案13】:

                    我去我的手机设置>>开发者选项>>调试并打开这个选项: “仅在收费模式下允许 ADB 调试”然后这个问题为我解决了。 希望也能为你解决。

                    【讨论】:

                      【解决方案14】:

                      对我来说,这是通过在开发人员选项中启用 USB 调试:


                      只需运行 adb install apk path 就可以了

                      【讨论】:

                        【解决方案15】:

                        就我而言

                        adb kill-server
                        adb connect [ip_address_of_device]
                        

                        【讨论】:

                          猜你喜欢
                          • 2023-03-17
                          • 1970-01-01
                          • 2020-08-21
                          • 1970-01-01
                          • 1970-01-01
                          • 1970-01-01
                          • 2011-06-13
                          • 1970-01-01
                          • 1970-01-01
                          相关资源
                          最近更新 更多