前言
正文
参考
1、-- Preferences打开VPN连接的实现方式:
在Preferences中通过调用VPNPreferences.bundle里面的VPNBundleController的setVPNActive:forSpecifier:方法实现的;
2、-- tweak 实现打开已配置过的VPN功能:
并且可以用Cycript注入Preferences,生成一个VPNBundleController对象直接调用_setVPNActive:打开已配置过的VPN
3、---VPNBundleController实例的创建:
通过VPNBundleController的initWithParentListController:方法可以拿到一个VPNBundleController实例去调用_setVPNActive:方法。
4、创建要在Preferences, 切换可以在SB:
缺乏头文件引入,可以使用 VPNBundleController = [[objc_getClass("VPNBundleController") alloc] initWithParentListController:nil]; 实现
5、--SBVPNConnectionChangedNotification 监听"VPNConnectionStatusChanged"消息
- /preferences-vpn
- SetVpn.m
- VPNPreferences-Structs.h
- iOS-10.1.1-Headers
- ManualVPN
- smyvpn
- https://github.com/yangzhenglun/hookPro/blob/4eba639a395935dde190419459e54f011fa00e42/smyvpn/Tweak.xm
转载请注明:张坤楠的博客 > preferences-vpn
在操作过程或者文章有问题的话欢迎在 原文 里提问或指正。