问题标签 [android-connectivitymanager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
5211 浏览

android - 获取通过以太网连接的 Android DhcpInfo

如何获取通过以太网连接的 android 设备的 DhcpInfo()(网关 ip、网络掩码、dns 等)?

如果设备通过 Wifi 连接并使用 ACCESS_WIFI_STATE 权限,我知道如何获取它:

但是如果设备通过以太网连接,我仍然找不到获取它的方法......谢谢

0 投票
0 回答
330 浏览

android - Android wifiManager.enableNetwork(j.networkId, true) 正在切换回以前的网络

我必须显示接入点列表(没有互联网),然后连接到选定的网络。我能够使用 wifiManager.getScanResults() 获得所有可用的网络网络,然后我过滤了我的首选开放网络并使用 wifiManager.addNetwork(conf) 进行了配置;然后我尝试将首选网络与 wifiManager.enableNetwork(j.networkId , true) 它连接到该网络并再次切换回以前的网络。

1)选定的网络已连接 2)然后在几秒钟后断开连接 3)wifi 连接到先前连接的网络 该行为仅在操作系统高于 7.0 的 Android 设备中观察到。Marsh mellow 及以下设备不切换网络

这是我的代码 1 ) 扫描和配置

2) 连接首选网络

0 投票
0 回答
602 浏览

android - 连接管理器.startUsingNetworkFeature 和连接管理器.requestRouteToHost 为 Api 级别 26 提供错误

我对 api 级别 < 26 使用了以下两种方法,但对于 API 级别 > 26,它会给出错误,有人可以帮助如何修复以下块。

提前致谢。

连接管理器.startUsingNetworkFeature

连接管理器.requestRouteToHost

0 投票
1 回答
1165 浏览

android - bindProcessToNetwork 不适用于 android 中的 ffmpeg

我正在使用FFmpeg将视频从摄像机(通过 wifi 连接,没有互联网连接)重新流式传输到另一台服务器,我想通过蜂窝数据进行重新流式处理。因为我已经连接到 wifi 并同时使用蜂窝数据 bindProcessToNetwork()。在执行 ffmpeg 命令之前,我已经完成了以下操作

在大多数情况下它工作正常,比如 webview 通过使用蜂窝数据正常工作,同时连接到 wifi ,但是当我尝试执行任何 ffmpeg 命令时它不起作用。

0 投票
1 回答
862 浏览

android - 使用 Android O 在 Internet 中断时安排作业

这是我想要实现的目标:

  1. 在后台监控网络状态。
  2. 当设备没有互联网时。
  3. 触发作业。

目前我看到,当设备进入“无互联网”状态时,不可能触发作业。任何解决方法或解决方案?

注意:我不喜欢通过前台服务监控设备互联网连接。

0 投票
2 回答
959 浏览

android - 如果移动数据已打开,wifi 也已打开但没有数据。那么如何通过 WIFI 发送请求

如果您只想使用 Wifi,请使用此代码。请确保 android 版本应大于 21。

0 投票
0 回答
2302 浏览

android - ConnectivityManager.NetworkCallback 永远不会获得可用的回调

我正在尝试通过蜂窝网络强制网络请求。为此,我要求来自 ConnectivityManager 的移动网络回调,如下所示:

通常有效,即使当前已连接 Wifi。但是,有时即使存在有效的移动连接,我也会收到“不可用”回调。

我记录了以下日志:

线条与

iwlan 中不允许默认数据呼叫激活

令人担忧,但我不知道它们的确切含义。

在使用网络回调以确保始终调用“可用”回调时是否有正确的方法?

0 投票
0 回答
466 浏览

android - WiFi密码错误返回true

我正在尝试像这样在我的设备上添加 wifi 网络

无论密码是什么,它都会返回 true。

然后我检查了互联网连接或不这样

但如果我添加了错误的密码,它也会返回 true。
所以你能在这个问题上纠正我吗?

0 投票
3 回答
352 浏览

java - 用于检查 Internet 连接的布尔方法仅返回 false

在我的应用程序中,我正在使用 WIFI 或移动数据连接检查手机是否连接到互联网,但问题是我的代码始终显示无法通过我的设备连接到 WIFI 来连接互联网。

这是我正在检查互联网连接的代码。

这就是我在其他活动中使用这个类来检查连接的方式。但是代码总是转到 else 部分并且总是显示 toast。

我在清单文件下给予的权限是:-

0 投票
3 回答
15036 浏览

android - 如何处理wifi和移动数据之间的网络变化?

我正在构建一个 VoIP 应用程序。在 VoIP 呼叫期间,当用户在 WiFi 和移动数据之间切换时,我在处理该场景时遇到了问题。

在我的呼叫屏幕活动中,我已注册接收器,这有助于我获得有关网络更改方案的通知。

这是我用来检测 onRecieve 方法中网络变化的代码。conn_name是保存先前连接名称的私有类级别变量。

所以使用上述方法我能够检测到网络变化。但是当我连接到 WiFi 时会发生一件奇怪的事情。当我的应用程序最初启动时,它与移动数据连接。当用户进入他已知的 WiFi 区域时,他会连接到他已知的 WiFi。由于始终选择 WiFi 作为默认路由,Android 切换到 WiFi 并且我收到 WiFi 已打开的网络通知。

所以我将我的应用程序 IP 地址更新为 WiFi IP 地址,所以这里没有问题。但是移动数据仍然同时连接,但getActiveNetworkInfo()告诉我,即使我很早就连接到移动数据,我也清楚地连接了 WiFi。

所以问题是当用户关闭 WiFi 按钮时,移动数据仍然连接,但我仍然收到 WiFi 关闭的通知。即使我的手机仍连接到移动数据,这表明我的网络已断开连接。

但一秒钟后,我收到移动数据已连接的通知。但是一旦我收到网络断开连接,我就关闭了我的 VoIP 通话。因此,当我收到关于 WiFi 已关闭的通知时,如何确定移动数据是否仍处于连接状态。

我尝试了 getActiveNetworkInfo() 但当我收到关闭 WiFi 的通知时它恰好为空。

我已经关注了这个链接:

Android API 调用以确定用户设置“数据已启用”
如何判断“移动网络数据”是启用还是禁用(即使通过 WiFi 连接)?

使用上面的链接,我可以检测到当用户连接 mobiledata 时移动数据按钮已启用。它给了我真实的信息。但是当这种特殊情况发生时,问题就会发生。

现在,当 wifi 被禁用时,我会收到通知,但它显示移动数据被禁用,即使我的移动数据已启用。我无法处理这种情况,因为我在收到已断开连接的通知时会断开呼叫。