public
class
mainactivity
extends
public
void
loginget
(view view)
public
void
loginpost
(view view)
/** * get請求執行緒
*/runnable getrun =
newrunnable()
};/** * post請求執行緒
*/runnable postrun =
newrunnable()
};/** * get提交資料
* * @param paramsmap
*/private
void
requestget
(hashmap
paramsmap)
tempparams.
(string.
format
("%s=%s"
, key, urlencoder.
encode
(paramsmap.
get(key)
,"utf-8"))
);pos++;}
log.
e(tag,
"params--get-->>"
+tempparams.
tostring()
);string requesturl = baseurl + tempparams.
tostring()
;// 新建乙個url物件
url url =
newurl
(requesturl)
;// 開啟乙個httpurlconnection連線
;// 設定連線主機超時時間
urlconn.
setconnecttimeout(5
*1000);
//設定從主機讀取資料超時
urlconn.
setreadtimeout(5
*1000);
// 設定是否使用快取 預設是true
urlconn.
setusecaches
(true);
// 設定為post請求
urlconn.
setrequestmethod
("get");
//urlconn設定請求頭資訊
//設定請求中的**型別資訊。
urlconn.
setrequestproperty
("content-type",)
;//設定客戶端與服務連線型別
urlconn.
addrequestproperty
("connection"
,"keep-alive");
// 開始連線
urlconn.
connect()
;// 判斷請求是否成功
if(urlconn.
getresponsecode()
==200
)else
// 關閉連線
urlconn.
disconnect()
;}catch
(exception e)
}/**
* post提交資料
* * @param paramsmap
*/private
void
requestpost
(hashmap
paramsmap)
tempparams.
(string.
format
("%s=%s"
, key, urlencoder.
encode
(paramsmap.
get(key)
,"utf-8"))
);pos++;}
string params = tempparams.
tostring()
; log.
e(tag,
"params--post-->>"
+params)
;// 請求的引數轉換為byte陣列
// 傳送請求引數
printwriter dos =
newprintwriter
(urlconn.
getoutputstream()
);dos.
write
(params)
; dos.
flush()
; dos.
close()
;// 判斷請求是否成功
if(urlconn.
getresponsecode()
==200
)else
// 關閉連線
urlconn.
disconnect()
;}catch
(exception e)
}/**
* 將輸入流轉換成字串
* * @param is 從網路獲取的輸入流
* @return
*/public string streamtostring
(inputstream is)
baos.
close()
; is.
close()
;byte
bytearray = baos.
tobytearray()
;return
newstring
(bytearray);}
catch
(exception e)
}/**
* * @param fileurl
*/private
void
downloadfile
(string fileurl)
}else
// 關閉連線
urlconn.
disconnect()
;}catch
(exception e)
}/**
* 檔案上傳
* * @param filepath
* @param paramsmap
*/private
void
uploadfile
(string filepath, hashmap
paramsmap)
pos++;}
tempparams.
("\r\n");
tempparams.()
; tempparams.
("\r\n");
string params = tempparams.
tostring()
; requeststream.
writebytes
(params)
;//傳送檔案資料
fileinputstream fileinput =
newfileinputstream
(file)
;int bytesread;
byte
buffer =
newbyte
[1024];
datainputstream in =
newdatainputstream
(new
fileinputstream
(file));
while
((bytesread = in.
read
(buffer))!=
-1) requeststream.
writebytes
("\r\n");
requeststream.
flush()
; requeststream.
writebytes
("--"
+"*****"
+"--"
+"\r\n");
requeststream.
flush()
; fileinput.
close()
;int statuscode = urlconn.
getresponsecode()
;if(statuscode ==
200)
else
}catch
(ioexception e)
}
Android即時通訊開發總結
第三方平台 比如環信,融雲,leancloud,容聯雲 網易雲信等等。直接使用sdk就可以實現了,最簡單最直接,而且穩定性已經不錯了,連ui介面都帶有了,可以自行修改,缺點是要收費。spark smack openfire 安卓使用asmack,測試使用spark,伺服器使用openfire。asm...
Android藍芽開發SPP協議通訊
最近專案中使用到藍芽spp協議通訊,然後在網上看了很多資料,進行學習使用,為了加深印象,做個簡單的整理。1 使用藍芽許可權 uses permission android name android.permission.bluetooth uses permission android name a...
Android後台錄影
最近因工作需求,要開發android後台錄影的功能,鑑於功能太 就不公開原始碼了,我們主要用於記錄計程車行駛過程中的資料。提供開發思路 1.難點 後台一直執行 service或thread 預覽介面的大小控制 1 1 這方面可以搜一搜,網上很多 2.本人採用service 懸浮視窗開發 2.1 在s...