[問題] unfortunately has stopped

看板AndroidDev作者 (三重劉德華)時間13年前 (2012/10/10 20:38), 編輯推噓2(2010)
留言12則, 5人參與, 最新討論串1/1
我是照著這本書「google android SDK 開發範例大全」第一版的 中的第八章練習http的post與get 我原本在4.0.3的版本運行http的post與get 是不能運行 在2.0.3就可以 上網找了原因發現是新版本的網路連結是不能運行在main thread 不過我4.0.3不是出現所謂的ANR 而是當我按下button傳送post或get時 是出現 unfortunately XXX has stopped 就得結束應用程式了 但因為我的thread不是很懂 所以我去找Thread的使用方式 有兩個版本thread的使用方式 都是來自同一個網站的作者 第一個版本如下(參考的網站 http://ppt.cc/Um8Z ) 傳統的thread的使用方式 我比較可以理解這種 但照著做還是出現相同問題 還是只有2.0.3可以正常執行 反倒是4.0.3 按下按鈕跑出unfortunately XXX has stopped 看了logcat出現的錯誤訊息 http://ppt.cc/~K-Z ------ 第二個版本如下(參考的網站 http://ppt.cc/NoZc ) 這是他直接針對他自己舊文章中的post跟get做修改 改成可以在android4.X使用 但我照著做相同的thread也是出錯 這個反倒是一執行程式就出現unfortunately XXX has stopped 而不是按下按鈕跑出錯誤的訊息 --- 程式碼:http://ppt.cc/ERCX 請忽略裡面的uriAPI字串是否正確...因為原本我是連到私人的網站 另外兩個版本的Button數量沒有一致 也請忽略 請問我是thread的觀念錯誤嗎? --- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.167.77.3 ※ 編輯: aiweisen 來自: 118.167.77.3 (10/10 20:39)

10/10 22:42, , 1F
根據log HTTP_TEST的67行改用mTextView1.getText();
10/10 22:42, 1F

10/10 22:43, , 2F
試試 猜想你用的getEditableText可能回傳了 null
10/10 22:43, 2F

10/10 22:53, , 3F
加上thread應該可行 我之前也是有這類的問題 解決了
10/10 22:53, 3F

10/10 23:28, , 4F
main thread不能 http connection
10/10 23:28, 4F

10/11 17:39, , 5F
67行修改完也是不行 也建立一個新的thread來做POST
10/11 17:39, 5F

10/11 17:40, , 6F
所以出現這個問題 仍表示httpconnection還在main thread
10/11 17:40, 6F

10/11 17:41, , 7F
中?
10/11 17:41, 7F

10/11 19:55, , 8F
你的HTTP5.java做的事情是將設定放在另一個thread中
10/11 19:55, 8F

10/11 19:55, , 9F
而不是按下去後產生另一個thread來連線
10/11 19:55, 9F

10/14 07:34, , 10F
handler.post(new runnable(){...})很好很強大
10/14 07:34, 10F

10/14 07:34, , 11F
建議用用看這個,可以比較無痛的改現有的code
10/14 07:34, 11F

10/14 07:34, , 12F
不過我不建議在心專案過度使用這個東西就是
10/14 07:34, 12F
文章代碼(AID): #1GTMmeaa (AndroidDev)