有没有一种方法可以检测安卓设备的所有网络功能



我所说的网络功能是指支持NR、LTE、CDMA、UMTS、GSM吗?是否支持wifi/移动数据?我只是想知道这个设备是否能够做到以上几点。我不需要知道当前活跃的网络内容。

https://developer.android.com/reference/android/net/NetworkCapabilities-这个api没有什么帮助,但不能完全满足我的需求。

我还想知道我的设备是否具有wifi/蓝牙/蜂窝功能等功能?

我一直在我的所有项目中使用这个强大的库:

implementation 'com.blankj:utilcodex:1.29.0'

用法:

LogUtils.i("NetworkUtils isConnect = %b" , NetworkUtils.isConnected());
LogUtils.i("NetworkUtils isAvailableByPing = %b" , NetworkUtils.isAvailableByPing());
LogUtils.i("NetworkUtils isWifiEnable = %b" , NetworkUtils.getWifiEnabled());
LogUtils.i("NetworkUtils isWifiConnected = %b" , NetworkUtils.isWifiConnected());
LogUtils.i("NetworkUtils is4G = %b" , NetworkUtils.is4G());
LogUtils.i("NetworkUtils getNetworkType = %s", NetworkUtils.getNetworkType());

要获得更多可访问性,请查看PhoneUtils&NetworkUtils类:

https://github.com/Blankj/AndroidUtilCode

我找到了一个使用packetmanager检测硬件功能的解决方案。例如:

getPackageManager().hasSystemFeature(PackageManager.FEATURE_WIFI);

这将帮助用户知道设备是否能够实现某些功能。

相关内容

  • 没有找到相关文章

最新更新