我认为有一种方法可以通过Wi-Fi测试开发中的应用程序。这可能吗?
我希望能够解开我的手机,无线开发。
我认为有一种方法可以通过Wi-Fi测试开发中的应用程序。这可能吗?
我希望能够解开我的手机,无线开发。
当前回答
对于Ubuntu / Linux:
Make sure your device is working for debugging: http://developer.android.com/tools/help/adb.html#Enabling Go to your sdk folder and find the folder platform-tools Use ./adb devices to list the connected devices. Make sure it is only one device connected and no emulator running. Find your device IP address, you can find it in your device: http://developer.android.com/tools/help/adb.html#wireless, or got adb shell like this: ./adb shell then netcfg. You will see a list of IP addresses. Find wlan0, in my case 192.168.100.3/2. ./adb tcpip 5555 Finally enter ./adb connect <Your device IP Address>:5555 in your terminal. You can now deploy the application to your device over Wi-Fi.
其他回答
我写了一个shell脚本,它可以让你通过Wi-Fi调试Android设备。
代码如下:
#!/usr/bin/env bash
#Notice: if unable to connect to [ip]:5555,
#try adb kill-server then try again.
adb shell ip route > addrs.txt
#Case 1:Nexus 7
#192.168.88.0/23 dev wlan0 proto kernel scope link src 192.168.89.48
#Case 2: Smartsian T1,Huawei C8813
#default via 192.168.88.1 dev eth0 metric 30
#8.8.8.8 via 192.168.88.1 dev eth0 metric 30
#114.114.114.114 via 192.168.88.1 dev eth0 metric 30
#192.168.88.0/23 dev eth0 proto kernel scope link src 192.168.89.152 metric 30
#192.168.88.1 dev eth0 scope link metric 30
ip_addrs=$(awk {'if( NF >=9){print $9;}'} addrs.txt)
echo "the device ip address is $ip_addrs"
echo "connecting..."
rm addrs.txt
adb tcpip 5555
adb connect "$ip_addrs"
我在这里找到了答案:
Connect Android device and adb host computer to a common Wi-Fi network accessible to both. We have found that not all access points are suitable; you may need to use an access point whose firewall is configured properly to support adb. Connect the device with USB cable to host. Make sure adb is running in USB mode on host. $ adb usb restarting in USB mode Connect to the device over USB. $ adb devices List of devices attached ######## device Restart host adb in tcpip mode. $ adb tcpip 5555 restarting in TCP mode port: 5555 Find out the IP address of the Android device: Settings -> About tablet -> Status -> IP address. Remember the IP address, of the form #.#.#.#. sometimes its not possible to find the IP-address of the android device, as in my case. so u can get it using adb as the following: $ adb shell netcfg and the should be in the last line of the result. Connect adb host to device: $ adb connect #.#.#.# connected to #.#.#.#:5555 Remove USB cable from device, and confirm you can still access device: $ adb devices List of devices attached #.#.#.#:5555 device
现在可以开始了!
如果adb连接丢失:
确保你的主机仍然连接到你的Android设备所在的Wi-Fi网络。 再次执行“adb connect”步骤重新连接。 或者如果这不起作用,重置你的adb主机: 亚行kill-server
然后从头再来。
虽然有这么多好的答案,这里是我对未来的我的两点意见:P和任何想要快速简单的人。
Mac:
首先使用USB连接设备,并确保调试工作正常。断开任何其他设备并退出模拟器。 打开终端,运行以下脚本 Adb tcpip 5555 Adb connect $(Adb shell ifconfig | grep "inet " | grep -v 127.0.0.1 | awk '{print $2}' | cut -d: -f2):5555 断开USB连接,设备应可进行WiFi调试
解释:
Adb tcpip 5555命令设备开始监听端口5555上的连接
Adb connect $(_ip_address_fetched_):5555表示连接到_ip_address_fetched_地址的5555端口
其中_ip_address_fetched_包含以下内容:
Adb shell ifconfig使用Adb shell获取Internet配置
Grep "inter "过滤任何以inter开头的行
排除本地主机。
此时,输出应该是这样的:
inet addr :###.###.#.# # #广播地址 :###.###.#.# # #面具:255.255.255.0
awk '{print $2}'获取组件数组的第二部分,用空格分隔(我使用zsh)。
到此为止的输出是
addr :###.###.#.###
Cut -d: -f2用分隔符分割字符串,然后取第二部分。它只会接收你的设备IP地址
我为Windows写了一个简单的脚本:
步骤1。用以下命令创建一个批处理文件,调用wifi_dedug.bat文件并复制以下内容:
adb tcpip 5555
pause
adb shell "ip addr show wlan0 | grep 'inet ' | cut -d' ' -f6|cut -d/ -f1" > tmpFile
pause
set /p ip= < tmpFile
@echo %ip%
del tmpFile
@echo %ip%
adb connect %ip%
pause
步骤2。将您的设备连接到pc。
步骤3。启动批处理文件(按要求输入键)
步骤4。断开设备连接,通过wifi进行部署/调试。
最好和超级简单的方法是:-
制作批处理文件:-
亚洲开发银行设备 Adb tcpip 5555 adb connect 192.168.9.120:5555(您的电话ip xxx.xxx.x. com)。xxx: 5555)
将此文件放入android sdk platform-tool文件夹。 例子:C:\Users\当地的user_name \ AppData \ \ Android \ Sdk \平台工具 右键单击文件>发送到>桌面(创建快捷方式) 就是这样……
现在你只需要通过USB连接你的手机,然后打开桌面快捷方式,断开你的手机…