Android網路狀態判斷
阿新 • • 發佈:2019-02-16
眾所周知當我們在手機上開啟一款安卓應用時,如果在應用中需要網路時(前提是手機上的網路開關沒有開啟),通常都會彈出一個提示框,然後根據相應的按鈕去開啟我們的網路開關,然後手機上的應用就能夠聯網載入資料啦!好啦廢話不多說,先貼上程式碼,註釋還是比較詳細的,很簡單,相信你能夠看懂的
是不是非要看效果 圖才知道是不是你要找的Demo,好吧,那就先看看效果吧!package com.syuct.heguicun.netconnection; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.os.Bundle; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.widget.Toast; public class MainActivity extends AppCompatActivity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getNetInfor(); } public void getNetInfor() { //首先是獲取網路連線管理者 ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo info = manager.getActiveNetworkInfo(); //網路狀態存在並且是已連線狀態 if (info != null && info.isConnected()) { Toast.makeText(MainActivity.this, "網路已連線", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "網路連線失敗", Toast.LENGTH_SHORT).show(); //下面的這種寫法你應該看得懂 new AlertDialog.Builder(MainActivity.this) .setTitle("請檢查網路連線") .setNegativeButton("確定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { if (android.os.Build.VERSION.SDK_INT > 10) { //安卓系統3.0以上開啟設定介面,也可以直接用ACTION_WIRELESS_SETTINGS開啟到wifi介面 startActivity(new Intent(android.provider.Settings.ACTION_SETTINGS)); } else { startActivity(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS)); } } }) .show(); } } }