<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
MianActivity
package lqs.bwei.com.iswangluowifi; import android.content.Intent; import android.os.Build; import android.provider.Settings; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); boolean b = NetWorkUtil.HavaNetWork(this); boolean wiFi = NetWorkUtil.isWiFi(); boolean mobile = NetWorkUtil.isMobileConnected(this); if (b){ Toast.makeText(this,"当前有网络",Toast.LENGTH_SHORT).show(); if (wiFi){ Toast.makeText(this,"当前wifi连接",Toast.LENGTH_SHORT).show(); Toast.makeText(this,"进去啦",Toast.LENGTH_SHORT).show(); }else{ Toast.makeText(this,"当前wifi没有连接",Toast.LENGTH_SHORT).show(); if (mobile){ Toast.makeText(this,"当前有流量",Toast.LENGTH_SHORT).show(); Toast.makeText(this,"进去啦",Toast.LENGTH_SHORT).show(); } } }else{ Toast.makeText(this,"当前无网络",Toast.LENGTH_SHORT).show(); Toast.makeText(this,"请打开网络",Toast.LENGTH_SHORT).show(); //声明intent Intent intent = null; if (Build.VERSION.SDK_INT>10){ intent = new Intent(android.provider.Settings.ACTION_WEBVIEW_SETTINGS); }else{ intent = new Intent(); intent.setClassName("com.android.settings","com.android.settings.WirelessSettings"); } } //Toast.makeText(this,b == true? "当前有网络" :"当前无网络",Toast.LENGTH_SHORT).show(); //Toast.makeText(this,wiFi == true? "当前wifi连接":"当前wifi没有连接",Toast.LENGTH_SHORT).show(); } }
获取网络状态的类
package lqs.bwei.com.iswangluowifi; import android.annotation.SuppressLint; import android.content.Context; import android.net.ConnectivityManager; import android.net.NetworkInfo; /** * Created by Jack Lee on 2018/7/9. */ public class NetWorkUtil { private static ConnectivityManager connectivityManager; //判断是否有网络链接 public static boolean HavaNetWork(Context context){ //获取网络链接者管理对象 connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); //获取网络信息 NetworkInfo Info = connectivityManager.getActiveNetworkInfo(); if (Info==null || !Info.isConnected()){ return false; } if (Info.isRoaming()){ return false; } return true; } //判断是否有WIFI的方法 public static boolean isWiFi(){ if (connectivityManager!=null){ //拿到所有网络连接数据组 NetworkInfo[] Info = connectivityManager.getAllNetworkInfo(); if (Info!=null){ for(int i=0;i<Info.length;i++){ if (Info[i].getTypeName().equals("WIFI")&& Info[i].isConnected()){ return true; } } } } return false; } public static boolean isMobileConnected(Context context){ NetworkInfo networkInfo = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); if (networkInfo!=null){ return true; } return false; } }