[問題] 讓Fragment共用httpclient

看板AndroidDev作者 (叛帝)時間13年前 (2012/12/05 10:58), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/1
我有寫一段httprespones的方法 在我按下按鈕會建立Fragment. 同時也會執行 HTTPRESPONSE程序 當我按下返回按鈕 HTTPRESPONSE程序並沒有中止動作. 重複執行幾次之後會造成我的伺服器當機. 我現在有兩個想法: 1.當我按下返回按鈕的時候會立即終止HTTPRESPONSE程序的動作應該就不會造成當機. 2.共用httpResponse在Activity就不會產生新的HTTPRESPONSE程序. 3.httpResponse的方法中有終止的方法?????? 希望版友能給些幫助 感激不盡 下面是我的程式碼: Handler mHandler = new Handler() { @Override public void handleMessage(Message msg ) { switch (msg.what) { case REFRESH_DATA: String result = null; if (msg.obj instanceof String) result = (String) msg.obj; if (result != null) Toast.makeText(templistview.this.getActivity(), result, Toast.LENGTH_LONG).show(); break; } } }; public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { super.onCreateView(inflater, container, savedInstanceState); View view = inflater.inflate(R.layout.templistmune, container, false); Thread b = new Thread(new sendPostRunnable(msg)); b.start(); return view; } private String sendPostDataToInternet(String strTxt) { HttpPost httpRequest = new HttpPost(uriAPI); List<NameValuePair> params = new ArrayList<NameValuePair>(); params.add(new BasicNameValuePair(M1,M2)); params.add(new BasicNameValuePair(M3,M4)); params.add(new BasicNameValuePair(M5,M6)); try { httpRequest.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8)); httpResponse = new DefaultHttpClient().execute(httpRequest); if (httpResponse.getStatusLine().getStatusCode() == 200) { String strResult = EntityUtils.toString(httpResponse.getEntity()); return strResult; } } catch (Exception e) { e.printStackTrace(); } return null; } class sendPostRunnable implements Runnable { String strTxt = null; public sendPostRunnable(String strTxt) { this.strTxt = strTxt; } @Override public void run() { String result = sendPostDataToInternet(strTxt); mHandler.obtainMessage(REFRESH_DATA, result).sendToTarget(); } } -- ══ ◣◢◣◢Vocaloid╮ ◤◥ ◢◢ quetzal◥◥ ◥◤ ◣◢ ║ ║ ● ●▼ ● ●◥ ● ● ; ︽﹨ ◥▼ ▃▃ ║ ● ● ● ● ド! ███▆≡ ▅▅ ══◣︶●══ ◥◣ / / / ══ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 119.14.80.132

12/05 13:33, , 1F
把該thread停掉
12/05 13:33, 1F

12/05 14:47, , 2F
停掉這條程序就可以了嗎xxd這麼簡單
12/05 14:47, 2F
文章代碼(AID): #1GlhWujR (AndroidDev)