概述
网络状态如果在5.0之后有了很大的改变,比如添加权限等,如果还是使用之前的判断
返现方法过时了
下面写了2个方法包含5.0之前的写法,和5.0之后的写法
5.0之后需要在配置文件中添加
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
下面是代码
ConnectivityManager connectivity = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (connectivity != null) {
Network networks = connectivity.getActiveNetwork();
NetworkCapabilities networkCapabilities = connectivity.getNetworkCapabilities(networks);
if (networkCapabilities != null) {
if (networkCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_WIFI)) {
Log.e("-----------wifi", "wifi");
} else if (networkCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR)) {
Log.e("-----------流量", "手机流量");
}
} else {
Log.e("------------没有网络", "没有网络");
}
}
} else {
NetworkInfo info = connectivity.getActiveNetworkInfo();
if (info != null && info.isAvailable()) {
String name = info.getTypeName();
Log.e("----------当前网络名称:", name);
} else {
Log.e("---------结果:", "没有可用网络");
}
}
下面写一个工具类,希望能帮助到大家
点击链接拿走把。。。。。。。。。。。。。。。
最后
以上就是可爱星星为你收集整理的Android 判断网络状态的全部内容,希望文章能够帮你解决Android 判断网络状态所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复