日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 芯聞號 > 充電吧
[導(dǎo)讀]最近在玩android,學(xué)習(xí)到網(wǎng)絡(luò)這一部分,寫了一個電腦本機(jī)做服務(wù)器,模擬器做客戶端的socket通信程序,但手機(jī)模擬器客戶端就是連不上電腦的服務(wù)器端,執(zhí)行到Socket socket=new Soc

最近在玩android,學(xué)習(xí)到網(wǎng)絡(luò)這一部分,寫了一個電腦本機(jī)做服務(wù)器,模擬器做客戶端的socket通信程序,但手機(jī)模擬器客戶端就是連不上電腦的服務(wù)器端,執(zhí)行到Socket socket=new Socket("xx.xx.xxx.xxx",8888);就拋異常。我又自己寫了一個普通的Java客戶端,測試能連上服務(wù)器端。所以代碼應(yīng)該沒有問題,問題就在于手機(jī)模擬器。同學(xué)的電腦上裝了2.0的android模擬器,我用同學(xué)的手機(jī)模擬器測試也能連上服務(wù)器端。所以可能是模擬器版本的問題。幾經(jīng)周折,無法解決,暫且擱置。

緊接著,我又寫了一個通過Http去請求Tomcat 服務(wù)器上的資源,執(zhí)行到DefaultHttpClient().execute(httpPostRequest)就拋異常,但在模擬器的瀏覽器上通過同樣的地址就可以訪問到資源,百度之沒解決。

感覺很郁悶,網(wǎng)絡(luò)的兩個程序都被擱置了,但感覺它們的錯誤原因應(yīng)該是一樣。故又單步調(diào)試之,發(fā)現(xiàn) socket程序出現(xiàn)android.os.NetworkOnMainThreadException異常,百度之,終于找到前兩個程序失敗的原因了,我用的是Android 4.0版本,而Android 3.0以上對網(wǎng)絡(luò)有了更多的限制。

總結(jié)如下, Android網(wǎng)絡(luò)編程要注意以下兩點:

一。android里自己電腦的IP地址是10.0.2.2,不能用127.0.0.1或者localhost,即最好使用自己電腦的IP
二。Android 3.0以上不能在android的主線程中執(zhí)行一個網(wǎng)絡(luò)操作,否則會出現(xiàn) android.os.NetworkOnMainThreadException異常,因為主線程的操作

不能超過5秒,否則就報錯了,解決方法:
(1)另開一個線程去做網(wǎng)絡(luò)連接的操作;
(2)在activity類中的onCreate方法中添加strict代碼,如下:
Java代碼?
public void onCreate() {????
???? .......??
???? StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()???????
??????????? .detectDiskReads()???????
??????????? .detectDiskWrites()???????
??????????? .detectNetwork()?? // or .detectAll() for all detectable problems???????
??????????? .penaltyLog()???????
??????????? .build());???????
???? StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()???????
??????????? .detectLeakedSqlLiteObjects()????
??????????? .penaltyLog()???????
??????????? .penaltyDeath()???????
??????????? .build());?????
}????

?

問題解決了,很是高興呀,呵呵

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉