1

NEVPNProtocol服务器更新属性以使用户名和密码不再有效时,有没有办法处理这个问题?

假设我们打开onDemandEnabledNEVPNManager 的标志,并且当服务器使凭证无效时(因为用户已被列入黑名单),有没有办法以编程方式切换它?从最终用户的体验角度来看,用户会等待很长时间以失败网页加载。如果应用程序被终止,使用计时器的后台获取可能无法正常工作。

除了使用推送通知,有没有更好的方法来解决这个问题?

4

1 回答 1

1

我自己没有尝试过,但是你应该做的是当你配置你的VPN并设置onDemandEnabled时,你需要定义onDemandRules。

那里有 NEOnDemandRuleDisconnect,它会阻止你的 VPN 启动,如果它已经处于活动状态,它将断开它。

https://developer.apple.com/library/ios/documentation/NetworkExtension/Reference/NEOnDemandRuleDisconnectClassRef/index.html#//apple_ref/occ/cl/NEOnDemandRuleDisconnect

这样,即使您的 VPN 处于活动状态,您也只会在规则仍然适用时使用它。

编辑:您也可以使用 onDemandRule - probeURL 。这样,在激活您的 VPN 之前,它会向您选择的服务器发送请求。如果您应该使用 VPN,服务器将返回答案。

于 2016-03-13T08:36:56.170 回答