手机网络判断及进入设置
2017-07-28 10:15
344 查看
掌握网络是否连接以及网络类型的判断,掌握无网络情况下,跳转设置网络设置界面
(切记注册权限)
<uses-permission
android:name="android.permission.INTERNET"/>
1.自定义广播类
2.完成注册
3.编写网络判断的工具类
(1).判断手机网络是否连接
(2).判断是否是wifi
(3).判断是否是手机流量
4.使用网络判断的工具类,判断当前用户手机的网络情况
(1).
(2).
(3).
5.无网络时,跳转网络设置界面
下面是自己编写的类:
一:网络判断工具类:
(切记注册权限)
<uses-permission
android:name="android.permission.INTERNET"/>
1.自定义广播类
2.完成注册
//注册广播 MyRecever recever = new MyRecever(); IntentFilter filter = new IntentFilter(); filter.addAction("com.bawei.net"); registerReceiver(recever, filter); |
private class MyRecever extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if(action.equals("com.bawei.net")){ String net = intent.getStringExtra("net"); Toast.makeText(MainActivity.this, "接收广播成功:"+net, Toast.LENGTH_SHORT).show(); } } } |
(1).判断手机网络是否连接
//判断网络是否连接 public static boolean isNetWorkAvailable(Context context) { //网络连接管理器 ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); //网络信息 NetworkInfo info = connectivityManager.getActiveNetworkInfo(); if (info != null) { return true; } return false; } |
//判断是否是wifi public static boolean isWifi(Context context) { //网络连接管理器 ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); //网络信息 NetworkInfo info = connectivityManager.getActiveNetworkInfo(); if (info != null && info.getType() == connectivityManager.TYPE_WIFI) { return true; } return false; } |
//判断是否是手机流量 public static boolean isMobile(Context context) { //网络连接管理器 ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); //网络信息 NetworkInfo info = connectivityManager.getActiveNetworkInfo(); if (info != null && info.getType() == connectivityManager.TYPE_MOBILE) { return true; } return false; } |
(1).
//使用自己编写的工具类,判断网络是否连接 boolean available = NetWorkUtils.isNetWorkAvailable(this); if (available) { Toast.makeText(MainActivity.this, "网络连接成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "网络连接失败", Toast.LENGTH_SHORT).show(); } |
//使用自己编写的工具类,判断是否是wifi boolean wifi = NetWorkUtils.isWifi(this); if (wifi) { Toast.makeText(MainActivity.this, "wifi网络连接成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "wifi网络连接失败", Toast.LENGTH_SHORT).show(); } |
//使用自己编写的工具类,判断是否是手机流量 boolean mobile = NetWorkUtils.isMobile(this); //有网做对应的操作 if (mobile) { Toast.makeText(MainActivity.this, "手机流量网络连接成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "手机流量网络连接失败", Toast.LENGTH_SHORT).show(); } } |
//无网络时,跳转网络设置界面 Intent intent = new Intent("com.bawei.net"); intent.putExtra("net", "亲,断网了,应该去设置网络了"); sendBroadcast(intent); Intent wifiSettingsIntent = new Intent("android.settings.WIFI_SETTINGS"); startActivity(wifiSettingsIntent); |
一:网络判断工具类:
/** * 网络判断的工具类 */ public class NetWorkUtils { //判断网络是否连接 public static boolean isNetWorkAvailable(Context context) { //网络连接管理器 ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); //网络信息 NetworkInfo info = connectivityManager.getActiveNetworkInfo(); if (info != null) { return true; } return false; } //判断是否是wifi public static boolean isWifi(Context context) { //网络连接管理器 ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); //网络信息 NetworkInfo info = connectivityManager.getActiveNetworkInfo(); if (info != null && info.getType() == connectivityManager.TYPE_WIFI) { return true; } return false; } //判断是否是手机流量 public static boolean isMobile(Context context) { //网络连接管理器 ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); //网络信息 NetworkInfo info = connectivityManager.getActiveNetworkInfo(); if (info != null && info.getType() == connectivityManager.TYPE_MOBILE) { return true; } return false; } }
二:ManActivity
/** * 掌握网络是否连接以及网络类型的判断,掌握无网络情况下,跳转设置网络设置界面 * 1.自定义广播类 * 2.完成注册 * 3.编写网络判断的工具类 * 4.使用网络判断的工具类,判断当前用户手机的网络情况 * 5.无网络时,跳转网络设置界面 */ public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //注册广播 MyRecever recever = new MyRecever(); IntentFilter filter = new IntentFilter(); filter.addAction("com.bawei.net"); registerReceiver(recever, filter); //使用自己编写的工具类,判断网络是否连接 boolean available = NetWorkUtils.isNetWorkAvailable(this); if (available) { Toast.makeText(MainActivity.this, "网络连接成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "网络连接失败", Toast.LENGTH_SHORT).show(); } //使用自己编写的工具类,判断是否是wifi boolean wifi = NetWorkUtils.isWifi(this); if (wifi) { Toast.makeText(MainActivity.this, "wifi网络连接成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "wifi网络连接失败", Toast.LENGTH_SHORT).show(); } //使用自己编写的工具类,判断是否是手机流量 boolean mobile = NetWorkUtils.isMobile(this); //有网做对应的操作 if (mobile) { Toast.makeText(MainActivity.this, "手机流量网络连接成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "手机流量网络连接失败", Toast.LENGTH_SHORT).show(); //无网络时,跳转网络设置界面 Intent intent = new Intent("com.bawei.net"); intent.putExtra("net", "亲,断网了,应该去设置网络了"); sendBroadcast(intent); Intent wifiSettingsIntent = new Intent("android.settings.WIFI_SETTINGS"); startActivity(wifiSettingsIntent); } } private class MyRecever extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if(action.equals("com.bawei.net")){ String net = intent.getStringExtra("net"); Toast.makeText(MainActivity.this, "接收广播成功:"+net, Toast.LENGTH_SHORT).show(); } } } }
相关文章推荐
- 判断-网络链接-进入-手机设置
- 手机网络判断及进入设置
- 网络判断——没网点击进入设置(ConnectivityManager)
- 进入一个APP时对手机网络判断(使用广播和不使用广播)
- Android判断网络连接状态并进入网络设置页面
- android 判断网络时打开设置
- Android判断网络是否打开,并打开设置网络界面
- 判断Adndroid手机的网络连接状态
- 判断手机网络状态
- win7笔记本如何设置共享网络供手机WIFI上网
- ConnectivityManager类网络状态判断设置+BaseActivity和BaseFragment的封装使用+网络状态工具类+网络请求工具类
- 程序里判断当前手机是否支持WLAN网络
- Android开发-常用工具方法(dp转成px、网络是否可用、是否3G网络、Gps是否打开、判断手机号码等)
- Android 判断网络状态,并且在没有网络的时候,打开网络设置对话框
- Android判断网络是否可用,调用系统网络设置
- 关于获取手机网络以及如何跳转到设置界面
- android判断当前网络状态及跳转到设置界面
- 嵌入式设备 以及手机 最新判断网络是否连接成功的最好方法,你值得知道
- Android判断网络是否打开,并打开设置网络界面
- Android 判断网络状态,并且在没有网络的时候,打开网络设置对话框