草庐IT

Android - 为什么 ConnectivityManager.isActiveNetworkMetered 总是返回 true(即使在 Wifi 上)

在我的Android音乐流应用程序中,下面的代码路径有助于根据ConnectivityManager类实例返回的值在高比特率流和低比特率之间做出决定。我试图理解为什么ConnectivityManager.isActiveNetworkMetered()会返回“true”,当它很明显是在本地Wifi网络上时。采用以下Android/Java代码:booleanisMetered=false;booleanisWifi=false;booleanisEthernet=false;booleanisRoaming=false;booleanisConnected=false;Network

Android 检查是否有WiFi但没有网络

我正在编写一个程序,我需要检查三种状态:1.如果我没有WiFi,2.如果我有WiFi但没有互联网连接(比如我打开路由器但拔下以太网电缆),以及3.如果我有WiFi和互联网连接。然后我会更改应用程序中图标的颜色以表示这些状态之一(红色、黄色或绿色)。目前情况2不工作,每当我拔下路由器上的电缆进行测试时,图标颜色从绿色变为红色。publicstaticvoiddoPing(Contextcontext){StringgoogleUrl="https://www.google.com";ConnectivityManagercm=(ConnectivityManager)context.ge

android - 检测 3G 或 Wifi 网络恢复

是否可以实现PhoneStateListener(或任何其他机制)来检测3G或Wifi网络连接何时恢复?我在API的摘要中看到LISTEN_DATA_CONNECTION_STATE和LISTEN_DATA_ACTIVITY都说(cellular)。这是否意味着只有3G?谢谢 最佳答案 更好的方法是使用android.net.ConnectivityManager类。注册接收器并监听广播。privateclassConnectionMonitorextendsBroadcastReceiver{@Overridepublicvoid

android - 在 Android 和 Raspberry Pi 3 Linux 之间设置 Wifi-Direct 连接

我想使用Wifi-Direct连接两台设备。一个是RaspBerryPI3(带有RaspbianJessie),另一个是Android智能手机。Raspberry作为服务器,Android作为客户端。我决定在Raspbian中使用wpa_supplicant并在Android中使用WifiDirect示例应用程序:https://developer.android.com/guide/topics/connectivity/wifip2p.html我的wpa_supplicant.conf包含:ctrl_interface=/var/run/wpa_supplicantupdate_c

如果该 SSID 已经有另一个 WifiConfiguration,则 Android 6.0 无法添加 WifiConfiguration

Android6.0对WiFi行为进行了一些更改,它破坏了我的应用程序行为并且找不到解决方案。基本上,对于Android6.0,您不能修改或删除不是由您的应用创建的WifiConfiguration对象。这意味着我需要始终创建自己的WifiConfiguration对象。但是,如果用户或其他应用程序已经为特定AP创建了WifiConfiguration,则我无法为该AP创建另一个。wifiManager.addNetwork(wifiConfiguration)返回-1。这适用于所有以前的Android版本,但不适用于Android6.0所以我卡住了。这是一个Android错误吗?我想

android如何检查wifi已连接但没有互联网连接

android我的设备已连接到wifi,但如果已连接wifi但没有互联网连接怎么办以下是我尝试检查是否没有互联网连接的代码publicstaticbooleanisConnectedWifi(Contextcontext){NetworkInfoinfo=null;if(context!=null){info=IsNetConnectionAvailable.getNetworkInfo(context);}return(info!=null&&info.isConnected()&&info.getType()==ConnectivityManager.TYPE_WIFI);}没有网

android - 移动数据开启时通过wifi(无互联网)发送数据

我正在开发通过wifi(由设备生成)连接到硬件设备并通过套接字连接向其发送数据的应用程序。问题是,当移动数据(3G/4G)被激活时,android会尝试通过它发送数据,而不是通过设备生成的wifi发送数据,因为wifi没有互联网连接。我正在考虑使用ConnectivityManager#setNetworkPreference()但它已在api21中弃用。如何设置为使用设备生成的wifi而不是移动数据接口(interface)发送数据? 最佳答案 经过大量研究和时间尝试理解这一切后,我发现这在Android5.0(Lollipop)

Android13 实现有线网络和wifi共存

Android13实现有线网络和wifi共存文章目录Android13实现有线网络和wifi共存一、前言二、修改代码:1、ConnectivityService.java2、NetworkFactoryImpl.java3、Android11和Android13修改代码目录对比:4、如果只修改部分代码的后果只修改ConnectivityService.java,不修改NetworkFactoryImpl.java的情况只修改NetworkFactoryImpl.java,不修改ConnectivityService.java的情况三、网络共存验证1、窗口命令查看(1)ifconfig(2)pi

android - 如何测量android wifi连接中的上传/下载速度和延迟

我需要一些api或操纵代码,通过它们我可以测量上传/下载速度以及来自android应用程序的wifi连接延迟。 最佳答案 您使用的是2.2(Froyo)或更高版本吗?如果是这样,请在您的应用程序中导入流量统计信息,并在您的应用程序使用互联网时添加以下内容。下载/上传:longBeforeTime=System.currentTimeMillis();longTotalTxBeforeTest=TrafficStats.getTotalTxBytes();longTotalRxBeforeTest=TrafficStats.getTo

ESP8266WiFi模块与Android APP实现数据传输(一)---硬件接线

前言:本文主要介绍一下ESP8266WiFi模块与AndriodAPP实现数据传输采用的硬件、接线、注意事项等。所需器件:序号器件型号1安可信ESP8266-12F(ATMQTT固件)2龙邱多电源模块(12V1A转换线)3TTL转USB模块4面包板5若干杜邦线ESP8266是一款高性能的WIFI串口模块,内部集成MCU能实现单片机之间串口通信,是目前使用最广泛的一种WIFI模块之一。功能特点:基于ESP8266芯片开发,模组集成了透传功能,支持串口AT指令集,用户通过串口即可实现网络访问,广泛应用于智能穿戴,智能家居,家庭安防,遥控器,汽车电子,智慧照明,工业物联网等领域。(1)产品参数(2)