android handler 主线程吗,[android开发]非主线程进行handler操作
[android開發(fā)]非主線程進行handler操作
(2012-10-30 16:26:01)
標簽:
雜談
android默認對主線程創(chuàng)建有消息隊列及l(fā)ooper(looper是對消息隊列的操作類),但是如果對于非主線程則無法創(chuàng)建handler來操作。android會報錯不能在非主線程創(chuàng)建handler。但是某些情況下又非要如此不可,該怎么操作呢?
最近做unity工程,給unity添加android支付插件,里面有用到handler導(dǎo)致程序一直無法正常運行,總是報類創(chuàng)建失敗,同時unity工程非常大,build一次需要半小時左右,調(diào)試運行代價之高無法想象。還是想象下吧:打一條log花去20s,然后build半個小時,安裝運行10分鐘,一個小時輕易去了,只是打了條log看下而已。我暈。還是把消耗時間的資源都去了再調(diào)試吧。
逐條排查后終于找到是new
handler()出錯了,百思不得其解。終于在論壇里看到了第一段中的結(jié)論??墒蔷W(wǎng)上沒有給完整的解決方法,只是說在new
handler()前要加Looper.prepare(),之后加Looper.loop();再就是大堆理論。能力不足,只好嘗試,但是一加代碼卡住了,因為源碼中Looper.loop()就是一個死循環(huán)。最后只需要在Looper.loop()后添加looper.quit()就ok了。
水文以記之,一條代碼搞三天呀,急需補充基礎(chǔ)知識。
分享:
喜歡
0
贈金筆
加載中,請稍候......
評論加載中,請稍候...
發(fā)評論
登錄名: 密碼: 找回密碼 注冊記住登錄狀態(tài)
昵???稱:
評論并轉(zhuǎn)載此博文
發(fā)評論
以上網(wǎng)友發(fā)言只代表其個人觀點,不代表新浪網(wǎng)的觀點或立場。
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的android handler 主线程吗,[android开发]非主线程进行handler操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tab s6 linux on dex,
- 下一篇: android 通知显示时间,andro