Android Studio-设备已连接但“离线”


83

这是一个很普遍的问题,但是没有一种解决方案适合我。第一次问,如果我弄错了约定,请您道歉。

我正在尝试将Galaxy S5连接到运行Ubuntu 14.04的计算机,以便可以进行一些Android开发。我最近下载并安装了Android Studio和SDK,并且通过USB连接设备时可以检测到我的设备,但是该设备显示为“未授权”或“离线”。我知道我应该期待RSA密钥提示,但这从未出现。

我努力了:

  • 检查调试已启用
  • 运行ADB Kill服务器和ADB设备
  • 重新启动(设备,开发人员选项,计算机)
  • 简单地拔出并重新插入USB电缆
  • 检查我的ADB版本(1.0.31)
  • 尝试不同的USB端口
  • 吊销USB调试授权
  • 在Android Studio中切换启用ADB集成
  • 作为PTP设备和MTP设备连接

我已经在运行fedora的单独计算机上进行了尝试,并且工作正常,没有任何问题,promopt立刻出现。因此,我认为不是USB电缆出现故障。

有任何想法吗?


请问帮助?
nhaarman

@nhaarman,我没有尝试过,谢谢。只要跟着指示,它仍然无法正常工作
亚伦摹

安装padNet +并重新启动设备以及android studio。
meyasir

我讨厌android studio。毫无疑问,当我确定设备已连接时,它突然开始向我显示此信息。
Shivam Pokhriyal

Answers:


156

试试这些:

  • 拔下并重新插入USB电缆。
  • 如果仍然无法使用,请拔下USB电缆,禁用然后在设备设置中启用USB调试。
  • 如果以上两种方法均失败,请重启设备。
  • 如果重新启动设备也失败,请重新启动Android Studio。
  • 如果重启Android Studio中仍然失败,尝试adb kill-serveradb start-server

希望这可以帮助。


4
重新启动设备是我的可行选择。谢谢
Eugenio Lopez '18

我的设备是wifi adb,不是usb
IgorGanapolsky '18

如果上述措施无效,您可以尝试重新启用开发人员模式。
jerrylei

4
我只是想知道为什么由最大的开发人员之一(Google)制作的如此频繁使用和基本的功能如此不稳定?
PolGraphic

@PolGraphic不是Google,而是制造手机硬件的公司。Google制造了该操作系统,但要由制造商决定是否可以使用与该操作系统兼容的兼容芯片。
CodeDoctorJL

39

尝试杀死adb,adb kill-server然后禁用usb调试,然后再启动adb,adb start-server然后启用usb调试并再次插入电话,呵呵,不要让进程之间的电话进入休眠状态

编辑

事实证明我的笔记本电脑的ADB RSA密钥有问题。我假设我的G3拒绝了一个错误的钥匙,并且不允许我的笔记本电脑通过ADB连接到它。

ADB将密钥文件保存在Windows计算机上的多个位置之一中,第一个位于adb.exe所在的位置(C:\ android),第二个位于用户的配置文件中(C:\ Users * username *)。 android),在Windows系统文件(C:\ Windows \ System32 \ config \ systemprofile.android)中排在第三位,该文件>简单命名为“ adbkey”,没有扩展名。如果运行ADB时没有密钥文件,它将自动生成一个。

我的位于我的用户文件夹(C:\ Users * username * .android)中。我要做的就是删除adbkey文件(还有一个名为“ adbkey.pub”的文件,该文件也已被我删除),在命令提示符下重新启动adb服务器(adb启动服务器),然后将手机插入。立即在我的> G3上收到RSA指纹密钥窗口,从而允许两个设备之间的连接。然后输入“ adb设备”返回我手机的序列号,后跟“设备”以显示其可用。>我返回到C:\ Users * username * .android \文件夹,并确保有足够的新“ adbkey”和“ adbkey.pub”文件。

来自XDA

编辑2

也尝试此步骤

  1. 导航到.android的存储位置
  2. 打开.android并删除名为adbkey和adbkey.pub的文件
  3. 启动ADB,然后输入adb kill-serveradb start-server

谢谢你的回答。我已经尝试过了,但是RSA提示仍然没有出现
Aaron G

3
尝试将mtp切换为ptp或将ptp切换为mtp
DevUt 2015年

谢谢。我在哪里找到.android?我似乎找不到它们。我正在使用Ubuntu 14.04,所以不确定您的解决方案如何映射到它。
亚伦·G

项目所在的位置
DevUt 2015年

15

我对这个问题的解决办法:

  1. Android设置
  2. 开发人员选项
  3. 撤销USB调试授权
  4. 重新插入设备并照常接受授权。
  5. 利润

大。接缝最简单,最直接的解决方案。为我工作,谢谢!
卡林·克拉斯特夫'17

12

步骤1:在开发人员选项中关闭USB DEBUGGING

第2步:拔下USB电缆

第3步:打开USB调试(这将保留USB配置)

步骤4:在命令提示符下输入adb kill-server,然后输入adb start-server

步骤5:连接USB电缆

第6步:检查在Android Studio中运行中连接的设备(您应该可以看到列出的设备)

步骤7:如果您想继续使用电缆运行,那就足够了

(如果要进行无线调试,请继续以下步骤)

步骤8:输入adb tcpip5555。如果未显示任何错误,请拔下USB电缆

第9步:从“关于abd”查找电话的IP地址,然后键入adb connect xxx.vvv.bn(电话的IP)

步骤10:再次在Android Studio中检入设备,然后看到设备列表中的设备。如是,


1
这个!!对我来说,重要的部分变成了下面的代码行,adb tcpip 5555 以及像下面这样使用手机IP中的端口:adb connect 192.168.1.87:5555。我首先尝试了它们。就像使用tcpip命令并在connect命令中保留端口,或在connect命令中保留端口并保留tcpip命令一样。不行 两者都必须在那里。
增强我的能力

6

如果您在Windows上遇到相同的问题,请尝试adb.exe从任务管理器中终止该进程,然后尝试再次运行您的应用程序。


4

无法连接三星Note II(N7100)。

步骤1.按照上面来自user4847410的回答。下次您连接手机时,它将出现一条授权消息,您就可以进入。

步骤2.我还交换了电缆。

步骤3.检查USB端口,就像您安装在一个特定端口上一样,那么另一个端口可能不适合您。

注意:做了两个批处理文件

adb-fix.bat

adb kill server
adb start server
pause

adb-devices.bat

adb devices
pause   

-为正确答案投票,但我没有足够的荣誉,因此已被删除!-


2
什么pause
IgorGanapolsky '18

1
它使Windows Shell等待按键。
nsandersen

4

我的电缆很长。只是不会保持联系。切换到另一根较短的黑色电缆,它可以100%地起作用。


3

较短的电缆可以解决问题。

事实证明,电缆内部使用的电线厚度会影响电缆组件的电阻–当连接的负载汲取电流时,该电阻会导致电缆内部的能量损耗,并导致电压降,从而降低终端设备的电压到无法快速或完全充电的地步。

http://goughlui.com/2014/10/01/usb-cable-resistance-why-your-phonetablet-might-be-charging-slow/


1
确实!我的1米电缆可以正常工作,而我的新1.5米电缆则不能工作。
安迪

3

更换USB电缆!!!! 我无法从技术上对此进行解释,但是经过大量的反复试验,这对我有用。



2

您可以尝试以下方法:

  1. 转到tools/enable adb integration并取消选中它。

  2. 现在检查并再次运行。下次,android studio将重新启动adb,它可能会找到您的设备。


谢谢。这也不起作用。该设备仍列为离线状态
Aaron G

2
  • 通过在cmd中发出以下命令

    adb kill-server来重新启动adb以杀死现有的adb会话,

    然后adb start-server启动一个新的adb会话
  • 在电话上禁用并重新启用电话上的USB调试,并接受RSA指纹
  • 如果仍然无法正常启动手机。

如果上述所有方法均不能解决问题,则可以尝试删除名为“ ANDROID_SDK_HOME”的环境变量。它真的解决了我的问题。希望对您有帮助!




1

此问题是因为您使用了旧的adb版本,并且设备上不支持。或者您有多个adb

关键是:

  • 确保您的SDK上有最新的adb可执行文件
  • 确保从“ SDK_DIR / platform-tools /”运行adb命令,因为如果您有多个adb文件,则应为最新版本(键入命令“哪个adb”要检查),您可以重命名另一个文件。

就我而言,在Windows 7上,我在“ C:\ Windows \ adb.exe”上还有一个adb及其旧版本,因此我的adb命令始终从该文件运行。我通过从sdk目录“ SDK_DIR / platform-tools / adb.exe”运行adb来解决此问题


1

在Windows上->从android sdk内的platform-tools文件夹启动终端。

然后使用以下命令

adb kill server
adb start server

它应该工作


1

之前将近3个小时,我做了:

  1. 我尝试了在几个站点中给出的所有操作,但我的android设备从未上线。
  2. 当我运行adb kill-server,然后运行adb-startserver时,android studio右下角的“设备文件资源管理器”显示“设备未在线(DISCONNECTED)”。

解决方法如下:

  1. 撤销了“开发选项”下设备上的所有USB调试授权
  2. 我在命令“ sudo adb kill-server”和“ sudo adb start-server”中添加了sudo。
  3. 此后,Android Studio中“设备文件资源管理器”中的消息更改为“设备正在等待身份验证,请接受设备上的调试会话”。但设备上未显示任何消息。尝试停止-重新启动adb,连接reconnet usb电缆,停止-重新启动usb调试,但没有任何效果。
  4. 回到设备并将设备USB设置从USB充电更改为“ PTP”,然后重新启动Android Studio。并且,繁荣,消息出现在电话上以接受设备上的调试会话。

1

使用此命令

-> adb disconnect

-> adb connect <ip address for your mobile:port number>

例如:adb connect 192.168.2.58:5555


0

请尝试按照以下步骤升级您的Android SDK平台:

  1. 运行SDK管理器

  2. 执行“安装软件包…”

  3. 重新启动SDK管理器

我尝试了,对我来说还可以。

参考:链接


在此处添加更多信息。链接可能不可用。
Haroldo Gondim'3

0

您可能拥有较旧版本的ADB,请更新工具包,然后关闭最新的ADB。


0

我最近也遇到了这个问题,并通过重新启动Android Studio来解决了这个问题。但是我的朋友必须为他的设备使用原始电缆,而没有其他电缆可用。


0

就我而言(同一个问题-Nexus 5已连接但状态为“离线”),此问题已通过Android Studio中的“无效缓存并重新启动”解决。假设问题出在adb中,并且重新启动Android Studio会导致adb重新启动。


0

通过访问制造商的网站,例如:Samsung,micromax,intex等,手动下载并安装设备驱动程序。


0

就我而言,问题是我使用了USB延长线。我将microUSB电缆插入PC后,就立即检测到该设备。


0

就我而言,事实证明您需要以设备所有者的身份登录才能正确接受USB调试。

尝试了“在电话上禁用并重新启用USB调试”步骤,但没有在“普通”用户上收到RSA提示符,而是切换到所有者并再次尝试并得到它。


0

我在带有microUSB电缆和USB-C适配器的USB-C设备上遇到了这个问题。在不使用任何适配器的情况下切换到USB-C电缆后,它可以工作。我只在LeEco上看到此问题。


0

我尝试了本页上的大多数内容,但没有一个适用于我的Samsung S5。但是,当我将电缆切换为USB-C类型时,问题似乎已解决……直到下一次。



0

如果您的应用程序不处理WiFi连接-另一种略有不同的解决方案,它将完全绕过USB问题-启用无线调试连接-WiFi / TCP / IP上的ADB。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.