android adb shell ping主机不工作

kulphzqa  于 2022-12-16  发布在  Android
关注(0)|答案(3)|浏览(233)

现在我想检查一下android设备是否可以通过网络连接到其他设备,我可以使用浏览器登录到互联网,但是当我使用adb shell连接到android模拟器,使用ping命令连接到主机时,它失败了。

kaiwii@ubuntu:~$ adb shell ping 192.168.145.136 PING 192.168.145.136 (192.168.145.136) 56(84) bytes of data. ^C

(192.168.145.136是主机的IP地址!)
但是当我ping www.example.com时127.0.0.1,它工作了。所以,我肯定设备支持ping命令。我只是不明白为什么它不能ping主机,而我可以在浏览器中登录互联网。更重要的是,任何人都可以显示任何其他方法来检查网络能力在android中?
谢谢

4ioopgfo

4ioopgfo1#

亚行 shell ping -c1 www.google.com
如果设备有互联网,将返回以下响应

PING www.google.com (xx.xx.xx.xx) 56(84) bytes of data.
64 bytes from (xx.xx.xx.xx): icmp_seq=1 ttl=61 time=25.3 ms

--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 25.332/25.332/25.332/0.000 ms

否则

ping: unknown host www.google.com
kqqjbcuj

kqqjbcuj2#

您是通过手机的数据接口连接到互联网的,而不是通过主机的USB。因此,您的设备和主机之间没有网络连接。此外,由于您的主机没有公共IP地址(它在多级NAT之后,至少有一级是明显的IP),因此设备不可能通过公共互联网ping您的主机。
至于检查网络连接,您可以尝试以下方法:

  • ping www.google.com

输出:

/ $ ping -c1 www.google.com
 PING www.google.com (74.125.236.51) 56(84) bytes of data.
 64 bytes from www.google.com (74.125.236.51): icmp_seq=1 ttl=55 time=40.8 ms
 64 bytes from www.google.com (74.125.236.51): icmp_seq=2 ttl=55 time=47.1 ms
 --- www.google.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 40.850/43.999/47.148/3.149 ms
  • 检查网络连接:busybox ifconfig -a

输出(稍微截取一点):

eth0      Link encap:Ethernet  HWaddr 5C:4C:A9:FC:B0:C0 
          inet addr:192.168.2.3  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::5e4c:a9ff:fefc:b0c0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:359 errors:0 dropped:0 overruns:0 frame:0
          TX packets:275 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:87543 (85.4 KiB)  TX bytes:48382 (47.2 KiB)

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:620 errors:0 dropped:0 overruns:0 frame:0
          TX packets:620 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:74037 (72.3 KiB)  TX bytes:74037 (72.3 KiB)

rmnet0    Link encap:Ethernet  HWaddr 9E:43:B5:97:81:B1 
          inet addr:106.197.224.94  Bcast:106.197.224.95  Mask:255.255.255.252
          BROADCAST MULTICAST  MTU:2000  Metric:1
          RX packets:54337 errors:0 dropped:0 overruns:0 frame:0
          TX packets:59160 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:32720935 (31.2 MiB)  TX bytes:8334589 (7.9 MiB)
<snipped value="rmnet1,rmnet2" />
sit0      Link encap:IPv6-in-IPv4 
          NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
<snipped value="tunl0,usb0" />
  • 值得信赖的浏览器和谷歌组合。
ggazkfy8

ggazkfy83#

鸦片溶液:

Map<String, Object> argv = new HashMap<>();
    argv.put("command", "dumpsys ");
    argv.put("args", Lists.newArrayList("battery"));
    String result = ((AppiumDriver) driver).executeScript("mobile: shell", argv).toString();
    System.out.println(result);

相关问题