我使用本指南以编程方式创建 VPN: http ://ramezanpour.net/post/2014/08/03/configure-and-manage-vpn-connections-programmatically-in-ios-8/
NEVPNProtocolIPSec *p = [[NEVPNProtocolIPSec alloc] init];
p.username = [[alertView textFieldAtIndex:0] text];
p.passwordReference = [keychainItemWrapper objectForKey:(__bridge id)kSecValueData];
p.serverAddress = @"mylink.com";
p.authenticationMethod = NEVPNIKEAuthenticationMethodSharedSecret;
p.sharedSecretReference = [keychainItemWrapper objectForKey:(__bridge id)kSecAttrService];
p.localIdentifier = @"identifier";
p.remoteIdentifier = @"identifier";
p.useExtendedAuthentication = YES;
p.disconnectOnSleep = NO;
[_vpnManager setProtocol:p];
一切都在 iOS8 上完美运行。首先,我展示了一个 UIAlertView,其中包含一个文本字段,用户在其中输入它的用户名。然后它把我重定向到我输入共享秘密的设置,然后我就可以连接了。
现在在 iOS 9 上。输入用户名并按下完成后,我会弹出一个窗口,上面写着:“应用程序”想要添加 VPN 配置。当我单击允许时,它会保存配置文件。之后我进入设置,当我按下连接时,它说: 没有提供 VPN 共享密钥。(即使我从 keychainItemWrapper 中检索它,如我的代码中所示。)任何人都可以帮我解决这个问题吗?
谢谢你