eclipse中Android模擬器,DDMS看不到設備的解決及有時無打印Log,自己有小改


在eclipse中啟動模擬器AVD后,剛啟動的時候,在控制台會看到相關的設備,在DDMS中也會有設備列表,只不過是offline的,
 但等到完全啟動開的時候,DDMS中什么也沒有,而且用adb命令adb devices查看設備,也沒有任何設備。

 一般情況下,重啟電腦就可解決。
 我要說的是不重啟電腦的方法:
 1. 打開cmd命令行,切換到adb命令目錄,如果你已經加入了環境變量,切換目錄就省了。

 2. 輸入命令:adb kill-server,adb被殺死了。

 3. 接着輸入命令:adb start-server,重新啟動adb。

 4. 再用adb devices命令,是不是看到設備了。

 此方法不僅適用模擬器,也適用真實的物理設備。

                                                 Log無打印

問題表現:連接手機與電腦后,驅動安裝正確,USB調試模式打開,在DDMS中可以看到device及其進程的信息,但是logcat中就是沒有信息輸出
問題原因:一些rom默認關閉logcat
問題說明:ddms中設備名字顯示為問號不影響,即adb get-serialno顯示為問號不影響.
解決方法:
1.需要root權限(部分rom不需要)
2.打開logcat,並設置level,執行命令如下(android 升級之后 adb 在 platform-tools中,不在tools中)
adb shell
echo 1 > /sys/kernel/logger/log_main/enable
說明:將1寫入日志開關文件,1為開,0為關
echo 2 >/sys/kernel/logger/log_main/priority
說明:將代表level的2寫入優先級文件
3.重啟adb,如果使用eclipse,先關閉eclipse,再重啟adb,再啟動eclipse
adb kill-server
adb start-server
4.此時logcat應該可以工作了,如果仍舊不工作,則更新adb
android update adb
5.重復第三步,此時logcat應該可以工作了,如果仍舊不工作,找到個人主目錄下的android目錄,如C:\Documents and Settings\Administrator\.android
找到這個目錄下的adb_usb.ini文件,其內容默認只有三行,全為注釋,在后面添加一行,內容為0x12d1
6.重復第三步,此時logcat應該可以工作了

以上對於手機調試打印Log還是沒用,不知道寫這個人當初有沒有試過用手機調試來打印信息,反正我試了就是沒有效果,用模擬器的話還是不錯的,用以上方法完全可以。但模擬器不是萬能,昨天我就把我寫的一個程序在模擬器上可以跑起來,但裝真機上就是不行,經調試時發現我是用公司的測試機做實驗的,測試機上我沒放號碼卡,所以在真機上得到一個空的號碼字符串,我在程序里要把前面的"+86"去掉,在截取字符長度時,出現了嚴重的數組越界錯誤,找到修改,OK了。不過有些功能模擬器上是沒有的,手機上的重力感應器、方向感應器、距離感應器等,在模擬器上是沒有的,只能在真機上試,不過android模擬器還是相當的強大,可以滿足大多數的開發。


今天我解決了上面的問題,我把ADT 18版本更新到20就好了,用手機可以看到打印結果了


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: