当 NEVPNProtocol
属性被服务器更新使得用户名和密码不再有效时,我们有办法处理这个问题吗?
比方说,如果我们为 NEVPNManager 打开 onDemandEnabled
标志,当服务器使凭证无效时(因为用户已被列入黑名单),有没有办法以编程方式切换它?从最终用户体验的角度来看,用户会等待很长时间才能加载网页失败。如果应用被终止,使用计时器的后台提取可能无法工作。
除了使用推送通知,有没有更好的方法来解决这个问题?
最佳答案
我自己没有尝试过,但是你应该做的是当你配置你的VPN并设置onDemandEnabled时,你需要定义onDemandRules。
这里有 NEOnDemandRuleDisconnect,它将阻止您的 VPN 启动,如果它已经处于事件状态,它将断开连接。
这样即使您的 VPN 处于事件状态,您也只会在规则仍然适用时使用它。
编辑:您还可以使用 onDemandRule - probeURL 。这样,在激活您的 VPN 之前,它会向您选择的服务器发送请求。如果您应该使用您的 VPN,服务器将返回一个答案。
关于ios - NEVPNManager 的 onDemandEnabled 标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35839491/