我正在尝试使用VPN iOS 8,为此我创建了一个新的project> iOS>单应用程序。它们连接到活动的VPN连接,我转到功能,并打开个人VPN。
通过这些简单的步骤,已经为我生成了Xcode:

现在,为了测试VPN是否处于活动状态,我在我的viewDidLoad方法中使用了下面的代码:
#import <NetworkExtension/NetworkExtension.h>
- (void)viewDidLoad {
[super viewDidLoad];
NEVPNManager *manager = [NEVPNManager sharedManager];
[manager loadFromPreferencesWithCompletionHandler:^(NSError *error) {
if(!error) {
NSLog(@"Load error: %@", error);
} else {
// No errors! The rest of your codes goes here...
NSLog(@"VPN seems to be fine.");
}
}];
}这段代码的问题是,我似乎在控制台上没有收到任何消息,问题是方法"loadFromPreferencesWithCompletionHandler"没有被调用,为什么会发生这种情况?
发布于 2015-07-29 07:51:47
我也遇到了同样的问题。我不知道为什么,但是似乎只有在loadFromPreferences通过'applicationDidBecomeActive‘方法之后,AppDelegate才会调用完成处理程序。如果在应用程序生命周期的那个点之前执行工作,等待完成处理程序将导致无限等待.
所以就等着"AppDelegate.applicationDidBecomeActive“来执行"loadFromPreferencesWithCompletionHandler”吧
https://stackoverflow.com/questions/28861510
复制相似问题