NetworkExtension 监控 WiFi 网络变化,即使应用程序未运行

Posted

技术标签:

【中文标题】NetworkExtension 监控 WiFi 网络变化,即使应用程序未运行【英文标题】:NetworkExtension to monitor WiFi network changes even when app not running 【发布时间】:2019-07-21 06:04:43 【问题描述】:

我希望能够根据用户当前的 wifi 网络向用户提供上下文本地通知。 为此,我需要监控网络变化/wifi 连接。

在应用程序运行时执行此操作似乎并不困难,但我正在尝试一种始终可靠的方法,即使应用程序处于后台或被终止。 我正在考虑使用NetworkExtension,更准确地说是NEHotspotHelper

有没有人对此有任何见解,知道它是否可行/好/坏?我在谷歌上找不到任何关于它的信息。

最有希望的是NWPathMonitor,但在网络扩展中使用它是否可以让它始终运行?

【问题讨论】:

嘿,你有什么解决办法吗?我也在尝试实现同样的事情,我想知道应用程序被杀死时网络/wifi的变化(不在后台) 不知道,那是前段时间我害怕 :) 嘿,@indrajit 你找到解决方案了吗? @ParagPawar 不,我没有。我没有过多地探索它。 【参考方案1】:

这绝对是可能的,NWPathMonitor 是监控网络的正确方法(请参阅我的 POC:https://github.com/federicocappelli/NetworkPathMonitor),并且它在网络扩展(在我的例子中为 NSDNSProxyprovider)中经过了实战测试。 通过网络扩展,您可以轻松地发送本地通知。

【讨论】:

谢谢看看 @Kappe 如何在应用被杀死时知道 wifi 名称和状态? @indrajit 我认为你不能使用 NWPathMonitor @Kappe 有什么想法吗?我停止了探索。

以上是关于NetworkExtension 监控 WiFi 网络变化,即使应用程序未运行的主要内容,如果未能解决你的问题,请参考以下文章

NetworkExtension - 权利

Xamarin表单(ios):以编程方式连接到wifi时的Runtimeexception

如何使用swift更改wifi DNS设置iOS

在 xcode 中添加 NetworkExtension.Framework

如何通过NEHotspotHelper获取WiFi列表(IOS,objective-c)

无线wifi监控怎样设置