package com.smit.DeskView.commonclass; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.util.Timer; import java.util.TimerTask; import android.os.Handler; import android.os.Message; import android.util.Log; //�ύһ������������߳� ��ȡ��״̬�������߳� public class RequestXml extends Thread { public URL mUrl; private Handler mMainHandle; private int msg; public String getString =null; private Timer mTimer; private String postString=null; private final int TimeOut=60*1000; private String Tag="RequestXml"; public void sendData() { String tag ="HTTPSend:sendData"; int statsID = 101; StringBuffer sb = new StringBuffer(); try { Log.e(Tag, "2222222222222222222222222222"); HttpURLConnection connection = (HttpURLConnection) mUrl.openConnection(); connection.setDoOutput(true); connection.setRequestMethod("POST"); connection.setUseCaches(false);//���Ի��� connection.setReadTimeout(TimeOut); connection.setConnectTimeout(TimeOut); int responseCode = connection.getResponseCode(); Log.e(tag, "Response code :" + connection.getResponseCode()); if (HttpURLConnection.HTTP_OK == responseCode) { //����ȷ��Ӧʱ�������� String readLine; BufferedReader responseReader; //������Ӧ�����������������Ӧ������ı���һ�� responseReader = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8")); while ((readLine = responseReader.readLine()) != null) { sb.append(readLine).append("\n"); } responseReader.close(); }else { } connection.disconnect(); getString=null; getString=sb.toString(); if (mTimer!=null) { //ȡ���������Ϸ��� mTimer.cancel(); mTimer=null; } Message m =new Message(); m.what=msg; m.obj=getString; mMainHandle.sendMessage(m); } catch (Exception e) { e.printStackTrace(); Log.e(Tag, e.toString()); } } public RequestXml(URL url, Handler Handle, int message, String str) { mMainHandle=Handle; mUrl=url; msg=message; postString=str; stopThread(); mTimer= new Timer(); TimerTask timeTask=new TimerTask() { @Override public void run() { Message m =new Message(); m.what=msg; m.obj=getString; /* m.arg1=getUpItemStatus(); m.obj=postString;*/ mMainHandle.sendMessage(m); } }; mTimer.schedule(timeTask,TimeOut);//֪ͨ���߳�������ȡ�� setPriority(getPriority()+2); } /*public int getUpItemStatus(){ String retStr; int nRet=ParseSeverData.ERROR_CODE_UP_ITEM_INFO; retStr = getDate(); if (retStr != null && retStr.length() > 0) { nRet = ParseSeverData.ParseUpLogRet(retStr); if (nRet == ParseSeverData.ERROR_CODE_NO_DATA || nRet == ParseSeverData.ERROR_CODE_UP_ITEM_INFO) { Log.e(Tag, "===UP_ITEM_INFO item_info error==="); } else { Log.e(Tag, "===UP_ITEM_INFO sucess==="); } } else { Log.e(Tag, "===UP_ITEM_INFO No Data==="); } return nRet; }*/ @Override public void run() { sendData(); super.run(); } public void stopThread(){ if (mTimer!=null) { mTimer.cancel(); mTimer=null; } } //�õ����� public String getDate() { return getString; } }