android 4.0以後,預設情況下是不允許在主線程中訪問網路。同樣的程式在android2.3上執行完全正常,而跑到android4上面,bug出現了...
看了一下異常:android.os.networkonmainthreadexception
多執行緒中訪問網路-既然系統預設不允許在主線程中訪問,那麼再開乙個執行緒好了,這樣在處理複雜流程的時候也不會影響介面的流暢,使用者體驗也好。採用handler訊息處理:
使用單獨執行緒進行網路操作,將結果進行回傳:
new thread(new runnable()
}}
獲取網路操作結果:
handler = new handler() else if (msg.what == 1)
} };
Android4 0不能在主線程中進行HTTP請求
在android4.0以後,會發現,只要是寫在主線程 就是activity 中的http請求,執行時都會報錯,這是因為android在4.0以後為了防止應用的anr aplication not response 異常。就針對此問題有兩種解決的方法 1.可以再activity的oncreate 方法...
Android4 0不能在主線程中進行HTTP請求
在android4.0以後,會發現,只要是寫在主線程 就是activity 中的http請求,執行時都會報錯,這是因為android在4.0以後為了防止應用的anr aplicationnot response 異常,即使這裡表達不是很清晰,大家應該都明白吧,哈哈 就針對此問題有兩種解決的方法 1....
Android 4 0 事件系統
2013 01 31 15 13 295人閱讀收藏 舉報 事件系統簡介 1.android 事件系統,它解決的是如何將按鍵 滑鼠 觸屏訊息從收集到最終將之傳送到焦點視窗進行處理的問題 2.android 事件處理 流程分兩部分,一部分是從 framework 開始,如何 從底層讀取事件並分發 給ac...