實(shí)現(xiàn)Android手機(jī)通過(guò)WIFI和PC連接
最近一段事件一直在研究如何用wifi和PC連接,但是在網(wǎng)上找了很久,也看過(guò)很多例子。都沒(méi)有成功。無(wú)奈只好自己研究。***自己寫了一個(gè)小Demo。分享一下。
1.在程序中通過(guò)
- Runtime.getRuntime().exec("su");
獲得手機(jī)root權(quán)限(手機(jī)必須是root之后的)。
2.重新啟動(dòng)adbd
- exec("stop adbd");
- exec("start adbd");
3.與PC建立連接(我是通過(guò)bat文件進(jìn)程處理的)
- /**
- * 手機(jī)連接wifi.
- *
- * @param host 手機(jī)ip:端口號(hào)。例如:192.168.10.124:8888
- */
- public int connectWifi(String host) {
- String cmd = ParseProperties.getProperties("dir")
- + "bin/ConnectWifi.bat " + host;
- BufferedReader reader = null;
- int retcode = 0;
- try {
- Process process = Runtime.getRuntime().exec(cmd);
- reader = new BufferedReader(new InputStreamReader(
- process.getInputStream()));
- @SuppressWarnings("unused")
- String line = null;
- String returnLine = null;
- System.out.println("*****************************");
- while ((line = reader.readLine()) != null) {
- if (line != null)
- returnLine = line;
- System.out.println(line);
- }
- if (returnLine.trim().startsWith("connected to")) {
- retcode = SUCCESS;
- } else if (returnLine.trim().startsWith("already connected to")) {
- retcode = SUCCESS;
- } else {
- retcode = FAILE;
- }
- System.out.println("*****************************");
- } catch (IOException e) {
- e.printStackTrace();
- retcode = FAILE;
- } finally {
- if (reader != null) {
- try {
- reader.close();
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- if (retcode == 0) {
- retcode = FAILE;
- }
- return retcode;
- }
bat文件
bat文件中的內(nèi)用很簡(jiǎn)單 adb connect %1
通過(guò)上述方法就能通過(guò)wifi和PC連接在一起了。注意:手機(jī)和PC機(jī)要在同一個(gè)局域網(wǎng)中。