小编Tim*_*ähr的帖子

通过android.net.NetworkCapabilities进行互联网检查不起作用

我有一个问题android.net.NetworkCapabilities.NET_CAPABILITY_INTERNET。根据JavaDocs的说法,“表明该网络应该能够访问Internet”。

不幸的是,这似乎无法正常工作-否则我在这里做错了。我输出了三种不同Wi-Fi网络的功能价值:

  1. 带有互联网访问的Wi-Fi。

  2. 没有互联网的Wi-Fi(我在此处手动禁用了互联网)。

  3. 公共热点(“ Telekom”热点)

在这三种情况下,功能值均为[ Transports: WIFI Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN LinkUpBandwidth>=1048576Kbps LinkDnBandwidth>=1048576Kbps]

这是我的代码:

ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkCapabilities capabilities = connectivityManager.getNetworkCapabilities(network);
boolean capability = capabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET
Run Code Online (Sandbox Code Playgroud)

true当与某些Wi-Fi连接时,布尔值始终为。

如果相关,则我测试过的设备正在Android 5.0.1(API 21)下运行。我将应用程序编译为API级别23。

networking android wifi android-wifi

6
推荐指数
2
解决办法
3413
查看次数

标签 统计

android ×1

android-wifi ×1

networking ×1

wifi ×1