NEVPNManager按需回调

时间:2015-08-04 08:26:53

标签: ios ios8 callback nevpnmanager

我有一个关于

的问题

loadPreferencesWithCompletitionHandler

savePreferencesWithCompletitionHandler NEVPNManager

例如,当按需建立连接时,是否会调用此函数的块?

如果是,那么它是否会触发应用程序变为活动状态?

如果不是,那么如果在VPN连接之前需要做一些准备工作,我该怎么办?

我可以在连接前设置某种回调吗?

1 个答案:

答案 0 :(得分:3)

不。你误解了这个街区的目的。

在完成适当的操作(加载或保存vpn配置)时调用它们,并为您提供NSError对象,以帮助理解操作是否成功。

到目前为止,正如我从官方文档和实验中发现的那样 - 没有正式的方法可以实现,你想做什么(在连接之前设置回调)。

但是,当您的应用处于有效状态时,您可以通过NEVPNManager订阅NEVPNStatusDidChangeNotification通知并检查连接状态:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didChangeVpnStatus) name:NEVPNStatusDidChangeNotification object:nil];

和didChangeVpnStatus方法:

NEVPNManager * vpnManager = [NEVPNManager sharedManager];
switch (vpnManager.connectionStatus) {
    case NEVPNStatusInvalid:
        break;
    case NEVPNStatusDisconnected:
        break;
    case NEVPNStatusConnecting:
        break;
    case NEVPNStatusConnected:
        break;
    case NEVPNStatusReasserting:
        break;
    case NEVPNStatusDisconnecting:
        break;
}