2012-04-11 50 views
2

我正在開發一個應用程序(使用Eclipse + Android SDk/NDK),它使用android手機上的micro-usb端口連接到外圍設備。我試圖通過WiFi(tcp端口5555)連接到手機上的ADB守護進程,以便在Eclipse中調試我的應用程序。但是,我無法得到這個工作。setprop沒有設置固定的Android手機上的屬性

沒有什麼我嘗試實際上導致切換到TCPIP模式的電話上的ADB守護進程(據我所知,通過查看getprop的輸出)。問題似乎是我無法在手機上設置相關的service.adb.tcp.port屬性。我使用的開發手機是運行CyanogenMod 7.0.0(Android v2.3.3)的LG GT540。開發機器是運行OS X Lion的iMac。

這裏是我嘗試過的一些相關信息/確認/發現:

  • 手機植根(ru.secure = 0
  • 通過USB連接到亞行工作正常
  • 亞行服務的Mac以root身份運行(adb root
  • adb shell給我一個超級用戶訪問的shell(#提示符,su,編輯系統文件的能力等)
  • adb tcpip 5555從Mac上的終端窗口運行時沒有抱怨或拋出錯誤,但未在手機上設置service.adb.tcp.port屬性
  • setprop service.adb.tcp.port 5555在手機上的終端窗口的#提示符下輸入時不會發生抱怨或拋出錯誤,但不設置service.adb.tcp.port財產Mac和手機殼
  • setprop persist.service.adb.enable 0作品(通過檢查ADB守護證實停止和啓用屬性getprop返回0)
  • setprop persist.service.adb.enable 1工作正常,從Mac和手機殼(通過檢查ADB確認守護進程啓動並且getprop返回1以啓用屬性)
  • 與亞洲開發銀行在手機上在手機上個
  • 的屬性只有persist.service.adb.enableinit.svc.adbd(如亞洲開發銀行正在運行)(由getprop | grep adb在手機上確認)在市場上
  • 應用程序是聲稱「自動」配置亞洲開發銀行(WIFI如WiFi ADB)不工作,要麼(tcp.port屬性設置和亞洲開發銀行在TCP不工作)

我是不是找太辛苦這裏失去了一些東西明顯?互聯網上有許多帖子和文章涉及亞洲開發銀行通過TCP進行工作的問題,但都涉及到電話根源問題。

是否有人能夠闡明爲什麼我似乎無法設置此特定屬性或提出任何其他可能阻止ADB守護程序在TCPIP模式下運行的問題?

回答

0

您需要停止然後在手機上重新啓動adbd以使tcp端口屬性生效。

  • setprop service.adb.tcp。端口5555
  • 停止adbd
  • 開始adbd
0

與任何設備(植根與否)真的應該是簡單:

  1. 連接到USB
  2. 運行adb tcpip <port>

你會看到restarting in TCP mode port: <port>吐出終端if 有效。如果你什麼都看不到,它沒有。

該屬性由守護程序爲您設置。告訴你設置propery和重新啓動adbd的教程專注於需要在設備上執行的代碼(即,如果你正在通過WiFi應用程序編寫ADB)。

但是,您提到您正在使用Cyanogenmod。 CM沒有「開發人員選項」中的「ADB over Network」設置(我發誓它在CM7中)?我知道他們選擇的端口是5555.您可能會遇到與嘗試手動執行此功能的衝突。如果它存在的話,最好使用系統內置的內容。

0

1行添加到應用程序的開始。

setprop service.adb.tcp.port 5555 && stop adbd && start adbd 

這會重新啓動adb!

相關問題