android查看ip
❶ ADB通過WIFI連接Android設備
ADB支持USB連接模式和TCPIP鏈接模式。我們可以用TCPIP模式通過WIFI無線連接ADB。設置非常簡單。
第一步
確保電腦和Android設備連接在同一個WIFI網路環境。
第二部
用USB線連接Android設備。連接上之後你的電腦就會檢查到設備並且ADB將會以USB模式啟動。可以通過adb devices命令檢查連接上的設備,用adb usb命令確認adb是運行在usb模式下面。
$ adb devices
List of devices attached
34342343gdf device
$ adb usb
restarting in USB mode
第三部
用adb tcpip模式重啟adb
$ adb tcpip 1111
restarting in TCP mode port: 1111
第四步
查看Android設備的IP地址,這里有三種方式查看Android設備IP。
設置-關於手機-狀態信息-ip地址中查看
設置-WLAN-點擊當前鏈接上的Wi-Fi查看IP
通過ADB命令查看設備IP地址:adb shell netcfg
第五步
知道設備IP地址之後,就可以用adb connect命令通過IP和埠號連接ADB了。
$ adb connect 192.168.1.3:1111
connected to 192.168.1.3:1111
#查看一下連接上的設備,usb連接和wifi連接都存在
adb devices
List of devices attached
34342343gdf device
192.168.1.3:1111 device
拔掉USB線,你會發現設備仍然是連接上的,如果沒有連接上,用剛才的命令重現嘗試一下。
總結
採用wifi連接ADB和uiautomotor結合起來可以用來在usb線的狀態下跑測試腳本,對於測試人員來說也是非常有幫助的。
❷ android怎麼獲取本機ip地址
獲取ip地址
* @return
*/
public static String getHostIP() {
String hostIp = null;
try {
Enumeration nis = NetworkInterface.getNetworkInterfaces();
InetAddress ia = null;
while (nis.hasMoreElements()) {
NetworkInterface ni = (NetworkInterface) nis.nextElement();
Enumeration<InetAddress> ias = ni.getInetAddresses();
while (ias.hasMoreElements()) {
ia = ias.nextElement();
if (ia instanceof Inet6Address) {
continue;// skip ipv6
}
String ip = ia.getHostAddress();
if (!"127.0.0.1".equals(ip)) {
hostIp = ia.getHostAddress();
break;
}
}
}
} catch (SocketException e) {
Log.i("yao", "SocketException");
e.printStackTrace();
}
return hostIp;
❸ android設備 如何通過mac地址知道ip地址
android 中有 獲取IP 和 MAC的方法例如獲取Ip
public String GetHostIp() {
try {
for (Enumeration<NetworkInterface> en = NetworkInterface
.getNetworkInterfaces(); en.hasMoreElements();) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> ipAddr = intf.getInetAddresses(); ipAddr
.hasMoreElements();) {
InetAddress inetAddress = ipAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) {
return inetAddress.getHostAddress();
}
}
}
} catch (SocketException ex) {
} catch (Exception e) {
}
return null;
}
MAC 就不列舉了自行網路,但是你說的問題 讓兩台設備TCP通訊,如果是在區域網內,也就是用wifi,你獲取ip 然後一個客戶端一個伺服器是可以連接成功的。但是如果用外網的話,就不是這么簡單了。比昌友如 我用android 作為客戶端PC作為手機搜缺 如果手機用外網訪問伺服器,這就相當於外網訪問內網伺服器世迅辯,需要在伺服器進行配置 一、在路由器的轉發規則設置映射 二、(這個有的情況不需要,例如,你的pc網路是鐵通你的手機是移動卡,就不用第二部,如果你的手機是聯通卡就需要這步)申請一個固定Ip 給客戶打電話
❹ android 獲取區域網IP與MAC 地址 毫秒級(詳解)
如果不想了解,請直接伸手 : android 獲取區域網IP與MAC 地址(精簡)
開始理清思路:主要使用 linux 兩個命令(2017-07-21 fix:這個思路不好,後面使用udp取代【毫秒級】)
【ping】: 查詢某個ip是否被設備佔用
【cat】 :文本輸出命令(其實可以使用 【arp】,但手機需要root許可權)
【ping】:這個我就不說了,實在不知道的,這次度娘不會騙你的。主要講講 【arp】:這里只簡單的介紹,推薦一篇博文: Android 平台上的 ARP 和 ARP欺騙 。我們的【cat】命令主要為了輸出手機本地ARP緩存表, ARP命令 可用於查詢本機ARP緩存中IP地址和 MAC地址 的對應關系
可以看到我們電腦中緩存的讓敬哪 ip地址與對應的mac地址,但我們手機上又要怎麼獲得呢?
哈哈其實到這里基本就結束了,也不算什麼詳解,目前這個方法還有個缺陷就是,耗時比較長,我計算了一下大概得花10秒才能得到區域網內的所有存在的ip與對應的mac。
還有待改善,其實想先取arp緩存,然後把arp中沒有的ip地址通過ping測試,坦碼然後再取arp緩存,這樣可以減少一部分的ping測試線程,但為了保證arp中ip對應的mac永遠是新的,只能每次都循環ping測試所有網段內的ip。如果有更好的想法,希望來懟我。
改變思路:使用udp來替代原先多線程ping
具體怎麼玩我就不寫了,他人的思路,抄襲過來,有損我英俊的形象,寫的還是比較好的稿森。
Android 單線程也能極速刷新並獲取區域網設備(IP+MAC)信息, 從4分30S 優化到 0.150S 不是夢
如果覺得他的用起來麻煩,我的IpScanner類也更新了,可以直接使用,還是簡單的。
奉上項目地址: IpSanner (一個類一個回調就搞定了,簡單的)
❺ android 如何獲取本機ip地址最佳方法
/**
* 獲取ip地址
* @return
*/
public static String getHostIP() {
String hostIp = null;
try {
Enumeration nis = NetworkInterface.getNetworkInterfaces();
InetAddress ia = null;
while (nis.hasMoreElements()) {
NetworkInterface ni = (NetworkInterface) nis.nextElement();
Enumeration<InetAddress> ias = ni.getInetAddresses();
while (ias.hasMoreElements()) {
ia = ias.nextElement();
if (ia instanceof Inet6Address) {
continue;// skip ipv6
}
String ip = ia.getHostAddress();
if (!"127.0.0.1".equals(ip)) {
hostIp = ia.getHostAddress();
break;
}
}
}
} catch (SocketException e) {
Log.i("yao", "SocketException");
e.printStackTrace();
}
return hostIp;
}
❻ android怎麼獲取ip地址
一、首先介紹蘋果系統下查詢手機ip:
1、首先點擊【設置】按鈕
2、開啟無線區域網
3、然後選擇無線網路並連接,連接成功後,點擊所連接網路後面的驚嘆號圖標
4、然後就能看到該無線網路的詳細信息了,其中就包含了ip地址
二、介紹安卓系統下查詢手機ip地址,其方法和蘋果系統差不多:
打開系統設置,點擊進入
點擊wlan
然後進入高級設置
最後就能查看手機的mac地址和ip地址了
❼ Android獲取如何獲取當前手機IP地址
手機查看無線網路IP地址的操作方法:設定-連接(無線和網路)-WLAN設置-點擊已連接的無線網路-IP地址。
❽ 如何查看android手機的ip地址和mac地址
1、打開手機,找到「設置」圖標,點擊進入。
2、進入設置之後,一直滑動屏幕到最後,找到「關於手機」,點擊進去
❾ 如何查看android emulator的ip
查看android emulator的ip的方法:
1.開啟多模擬器時使用adb shell無法進入android,會報error: more than one device and emulator錯誤。這個時候使用:adb devices查看載入的設備,比如返回結果為
List of devices attached
emulator-5554 device
emulator-5556 device
2.使用 adb -s [設備] [命令]執行命令,比如:
adb -s emulator-5554 shell
3.進入shell後使用getprop命令獲取系統信息
其中的[net.gprs.local-ip]: [10.0.2.15]即為模擬器的ip地址
多個模擬器ip地址都是相同的
❿ 如何獲取Android IP地址
本文講述無線網和乙太網mac地址獲取的方法: 1.乙太網獲取mac地址 因為機頂盒系統是linux內核的,假設ethernet是eth0,那麼可以從以下文件中讀取相關信息:/sys/class/net/eth0/address方法1: public static String loadFileAsString(String filePath) throws java.io.IOException{ StringBuffer fileData = new StringBuffer(1000); BufferedReader reader = new BufferedReader(new FileReader(filePath)); char[] buf = new char[1024]; int numRead=0; while((numRead=reader.read(buf)) != -1){ String readData = String.valueOf(buf, 0, numRead); fileData.append(readData); } reader.close(); return fileData.toString();}/** Get the STB MacAddress*/public String getMacAddress(){ try { return loadFileAsString("/sys/class/net/eth0/address") .toUpperCase().substring(0, 17); } catch (IOException e) { e.printStackTrace(); return null; }}方法2:NetworkInterface NIC = NetworkInterface.getByName("eth0"); byte[] buf = NIC.getHardwareAddress(); for (int i = 0; i < buf.length; i++) { mac = mac + byteHEX(buf);}if (mac != null && !"".equals(mac)) {
}2.wifi獲取mac和ip首先要在manifest.xml文件中添加許可權: <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>獲取mac的代碼如下WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); WifiInfo info = wifi.getConnectionInfo(); return info.getMacAddress();獲取Ip的代碼public String getLocalIpAddress() { try { for (Enumeration<NetworkInterface> en = NetworkInterface .getNetworkInterfaces(); en.hasMoreElements();) { NetworkInterface intf = en.nextElement(); if (intf.getName().toLowerCase().equals("eth0")) { for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) { InetAddress inetAddress = enumIpAddr.nextElement(); if (!inetAddress.isLoopbackAddress()) { String ipaddress = inetAddress.getHostAddress().toString(); if(!ipaddress.contains("::")){//ipV6的地址 return ipaddress; } } } } else { continue; } } } catch (Exception ex) { Log.e("WifiPreference IpAddress", ex.toString()); } return null; }