在Swift中配置ios8 VPN配置和控制

时间:2014-10-15 20:10:41

标签: ios swift vpn

我正在尝试使用ios8的VPN配置和控制设置应用内VPN连接,但我被卡住了。我正在使用http://ramezanpour.net/post/2014/08/03/configure-and-manage-vpn-connections-programmatically-in-ios-8/处的资源来帮助,但我在将协议绑定到VPN管理器时遇到了问题。

到目前为止,我有以下代码,根据上面的教程,您需要将协议绑定到管理器...

func initVPN() {
    let manager: NEVPNManager = NEVPNManager.sharedManager()
    let p = NEVPNProtocolIPSec()

    p.username = "ospencer"
    p.passwordReference = getPasscodeNSData("vpnPassword")
    p.serverAddress = "vconnect.uk.capgemini.com"
    p.authenticationMethod = NEVPNIKEAuthenticationMethod.SharedSecret
    p.sharedSecretReference = getPasscodeNSData("vpnSharedSecret")
    p.useExtendedAuthentication = true
    p.disconnectOnSleep = false

我已经尝试过编写manager.protocol = p,但是我收到错误“预期成员名称跟随”。和“协议声明中的预期标识符”。我已经尝试过在一些Objective C示例'[manager setProtocol:p]'中使用的setProtocol函数,但这似乎不存在于最新的xcode构建中。

有人可以帮忙吗?此外,似乎几乎没有关于在互联网上使用VPN功能的详细信息 - 即使在Apple的网站上也是如此。任何指针都会很有用。

谢谢,

奥利弗。

1 个答案:

答案 0 :(得分:3)

To use a reserved word as an identifier, put a backtick (`) before and after it. For example, class is not a valid identifier, but
     

class有效。反引号不被视为其中的一部分   标识符; x和x具有相同的含义。

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/LexicalStructure.html