Android 判斷是否能真正上網(wǎng)的實(shí)例詳解
Android 判斷是否能真正上網(wǎng)的實(shí)例詳解
檢測(cè)網(wǎng)絡(luò)是否連接
實(shí)現(xiàn)代碼:
/**
*
檢測(cè)網(wǎng)絡(luò)是否連接
*
*
@return
*/
private
boolean
isNetworkAvailable() {
//
得到網(wǎng)絡(luò)連接信息
ConnectivityManager
manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
//
去進(jìn)行判斷網(wǎng)絡(luò)是否連接
if
(manager.getActiveNetworkInfo() != null)
{
return
manager.getActiveNetworkInfo().isAvailable();
}
return
false;
}
ping的狀態(tài)
public static final boolean ping() {
String result = null;
try {
String ip = "www.baidu.com";// ping 的地址,可以換成任何一種可靠的外網(wǎng)
Process p = Runtime.getRuntime().exec("ping -c 3 -w 100 " + ip);// ping網(wǎng)址3次
// 讀取ping的內(nèi)容,可以不加
InputStream input = p.getInputStream();
BufferedReader in = new BufferedReader(new InputStreamReader(input));
StringBuffer stringBuffer = new StringBuffer();
String content = "";
while ((content = in.readLine()) != null) {
stringBuffer.append(content);
}
Log.d("------ping-----", "result content : " + stringBuffer.toString());
// ping的狀態(tài)
int status = p.waitFor();
if (status == 0) {
result = "success";
return true;
} else {
result = "failed";
}
} catch (IOException e) {
result = "IOException";
} catch (InterruptedException e) {
result = "InterruptedException";
} finally {
Log.d("----result---", "result = " + result);
}
return false;
}
如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
Android 中ListView點(diǎn)擊Item無響應(yīng)問題的解決辦法
如果listitem里面包括button或者checkbox等控件,默認(rèn)情況下listitem會(huì)失去焦點(diǎn),導(dǎo)致無法響應(yīng)item的事件,怎么解決呢?下面小編給大家分享下listview點(diǎn)擊item無響應(yīng)的解決辦法2016-12-12
Android高級(jí)xml布局之輸入框EditText設(shè)計(jì)
Android虛擬導(dǎo)航欄遮擋底部的輸入框的解決方法
Suspend函數(shù)與回調(diào)的互相轉(zhuǎn)換示例詳解
Android自定義相機(jī)Camera實(shí)現(xiàn)手動(dòng)對(duì)焦的方法示例
Android幀率監(jiān)測(cè)與優(yōu)化技巧

