如何使用L3VPN的demo

通过此文档,您可以:

  • 验证生成的描述文件是否正确
  • 如何对PacketTunnel.appex进行重签名
  • 将demo运行起来,连接一次VPN!

~打开demo工程

解压百度网盘中的L3VpnVPNDemo.zip压缩包,进入后,打开VPNDemo.xcworkspace

(⚠️ 不是VPNDemo.xcodeproj)


~修改BundleID、签名、描述文件

刚打开工程时,工程肯定会报错,因为XCode配置中的签名与描述文件,都还是深信服的签名与描述文件,需要进行修改,您需要修改的地方有:

(可以使用您要集成SDK那个App的BundleID — 但记得使用之前重新生成了带NetworkExtion功能的描述文件)

  • BundleID与描述文件

    请将Bundle Identifiter与描述文件修改为贵司所使用的

  • 签名

    签名自然要换成贵司的签名文件

    如果XCode不再报错,说明这一步是成功完成了


⚠️~对PacketTunnel进行重签名

由于SDK中扩展是以appex形式提供的,此时appex的签名信息还是Sangfor的签名,在上一步中,在XCode中,已经配置了主App的签名,这一步就需要利用Sangfor的签名工具对appex进行重新签名

解压 重签名工具.zip,会看到一个SangforResign-1.2beta的可执行文件,点击后,如图:

appex在demo中的位置为:

找到位置后,在重签名工具中选择正确的路径,点击签名:

然后,可以使用 codesigin -vvd $path_toappex命令,查看扩展的签名信息,看到是否已经是贵司的签名

(⚠️在某些mac上,签名命令有bug,导致即使使用 codesgin -vvd查看的是正确的结果,也是有问题的,导致扩展无法运行,如果遇到这种情况,还麻烦您多进行几次签名)


~使用demo

签名完成后,就可以运行demo了,demo运行效果如图:

⚠️选择L3VPN模式;而 VPN地址,账号需要咨询贵司的VPN管理员,或者可以找安排您集成SDK的项目经理等寻求帮助

登录成功后,效果如图(中间如果有提示权限申请,请同意),状态栏有[VPN]标志

⚠️如果出现无法登录的情况,那么应该是VPN服务端无法连通或者其他配置问题,可以向贵司的VPN管理员寻求帮助

demo中完成了集成SDK所需要完成的所有功能,并且注释非常丰富,您可以使用这个demo通过日志、断点等方式观察demo集成SDK的方式。

后续也可以参考demo的代码进行集成。


~结论

如果demo可以正常运行,那么您准备的p12与描述文件是正确的,可以准备将SDK集成到您的工程中了!

如果demo无法正常运行,那么请您详细检查您的描述文件是福已经具备NetworExtion功能,PacketTunnel是否已经签名等。