java手机怎么关闭网络_java – NetworkInfo没有正确响应运行Nougat的手机上的网络更改...

前言:在运行6.0.1的手机上运行正常.但是在运行7.1.1的手机上,它不是,如下所示.

build.gradle(模块:app)

compileSdkVersion 25

buildToolsVersion "25.0.0"

applicationId "com.gesslar.threshvote"

minSdkVersion 19

targetSdkVersion 25

AndroidManifest.xml中

android:name=".NetworkChangeReceiver"

android:enabled="true"

android:exported="true">

NetworkUtil.java

我有一个BroadcastReceiver,我用它来简单地调用NetworkUtil.updateNetworkStatus(context);

public static void updateNetworkStatus(Context context) {

final ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

final NetworkInfo activeNetwork = connectivityManager.getActiveNetworkInfo();

if (activeNetwork == null) {

Log.d(TAG, "NO CONNECTION INFORMATION");

return;

}

if (activeNetwork.isConnected()) {

Log.d(TAG, "WE ARE CONNECTED TO A NETWORK");

} else {

Log.d(TAG, "WE ARE NOT CONNECTED TO A NETWORK");

return;

}

Log.d(TAG, "NETWORK TYPE: " + activeNetwork.getTypeName());

}

从WiFi和数据连接开始我已经完成了以下测试

关闭WiFi

03-08 20:15:04.664 29796-29796/com.gesslar.threshvote D/NetworkUtil: NO CONNECTION INFORMATION

打开WiFi:

03-08 20:15:26.333 29796-29796/com.gesslar.threshvote D/NetworkUtil: WE ARE CONNECTED TO A NETWORK

03-08 20:15:26.333 29796-29796/com.gesslar.threshvote D/NetworkUtil: NETWORK TYPE: MOBILE

关闭数据:

No log line written

打开数据:

No log line written

关闭WiFi然后关闭数据:

1) 03-08 20:17:13.029 29796-29796/com.gesslar.threshvote D/NetworkUtil: NO CONNECTION INFORMATION

2) No log line written

关闭两个,打开WiFi:

03-08 20:18:00.198 29796-29796/com.gesslar.threshvote D/NetworkUtil: NO CONNECTION INFORMATION

^ showed as soon as it started seeking for WiFi, but no further log line was written when WiFi became active.

我对结果感到非常困惑.我在其他地方看到我应该在运行时绑定它,但是,我唯一的活动是Preferences活动.该应用程序不具有运行时UI,而是使用后台IntentService和Notifications.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值