我使用 NetworkExtension
框架编写了一个 VPN 工具。我可以通过 NEVPNManager.sharedManager
连接 IPSec,并且可以在 VPN 连接状态改变时抓取通知。但是当我终止应用程序并重新打开它时,NEVPNManager.Connect.Status
始终为零,这意味着无法显示正确的连接状态。如何解决?
最佳答案
William Sterling 评论确实有道理,而且对我有用,
在为 NEVPNStatusDidChange
添加观察者之前,为 VPN Manager 对象加载首选项,如下所示,
override func viewDidLoad() {
super.viewDidLoad()
self.vpnManager.loadFromPreferences { (error) in
if error != nil {
print(error.debugDescription)
}
else{
print("No error from loading VPN viewDidLoad")
}
}
NotificationCenter.default.addObserver(self, selector: #selector(ViewController.VPNStatusDidChange(_:)), name: NSNotification.Name.NEVPNStatusDidChange, object: nil)
}
关于ios - 重启应用后NEVPNManager检查是否连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39056600/