1. 程式人生 > >Android網路狀態判斷

Android網路狀態判斷

  眾所周知當我們在手機上開啟一款安卓應用時,如果在應用中需要網路時(前提是手機上的網路開關沒有開啟),通常都會彈出一個提示框,然後根據相應的按鈕去開啟我們的網路開關,然後手機上的應用就能夠聯網載入資料啦!好啦廢話不多說,先貼上程式碼,註釋還是比較詳細的,很簡單,相信你能夠看懂的

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();
        }
    }
}
是不是非要看效果 圖才知道是不是你要找的Demo,好吧,那就先看看效果吧!