我在另一台本地PC中使用了Genymotion设备(由于性能低下)和另一台开发PC中的Android Studio。我可以从我的开发PC连接任何低于API21的Genymotion设备(使用 adb connect 192.168.x.x ),但任何带有API21的设备在我的开发PC中显示为离线,尽管adb可以很好地连接。在"设备中选择"面板和设备监视器,显示offline
。但是在远程PC中,相同的设备在线并且可以使用。为什么它为API低于21的设备显示online
,为API 21+设为offline
。
连接到我的远程Genymotion设备后,我得到以下内容。但同样的设备可以很好地在远程主机上运行。 API21下面的任何设备都会显示online
。
答案 0 :(得分:4)
我认为我通过试验n错误得到了正确的结果。连接远程genymotion设备(API21)后,我发现A SINGLE genymotion设备的任务管理器中有几个adb进程。然后我手动停止所有&#34 ; ADB"来自远程机器上的Windows任务管理器的进程(或者对于所有adb进程的adb kill-server命令,在我的情况下还有更多)。然后使用adb命令重新启动并再次连接相同的远程设备frm开发机器。它以某种方式连接并显示ONLINE,并按预期工作。我不知道为什么它发生在设备上< API21。另一台设备> = API21直接连接并在线显示。问题似乎是远程机器上的多个adb进程,仅用于API21的单个genymotion设备。
答案 1 :(得分:2)
我尝试了两种解决方案(包括已接受的解决方案)并且它没有起作用。终于找到了解决这个问题的方法。经过多次调整后,我发现genymotion当时只允许adb connection
来自一台机器。在主机上执行adb kill-server
,然后在远程计算机上执行adb connect ip
就可以了。