如何把 iPhone 的 VPN 连接放到主屏幕上
快捷指令可以调用已保存的 VPN 连接,并把它放到主屏幕上。按钮只对操作能看到的配置生效,策略仍然优先。
主屏幕上的图标只是启动器,真正有意思的事情都发生在点按之后。快捷指令保存的是一张操作图,图标用这张图打开“快捷指令”,而 Set VPN 操作则请系统对一个具名配置执行动作。隧道本身并不住在图标里,所以同一条快捷指令也可以从专注模式、自动化或轻点背面的触发器中运行。这种间接性同时解释了便利与失败。把目标配置设对,按钮就可靠;留得含糊,它就成了一个有时会做点什么的开关。
操作能看到什么
Set VPN 随 iOS 16.4 进入“快捷指令”,作用于系统向它公开的那些 VPN 配置。该操作接收一个配置和一个操作类型,所以值得核对的两件事是:你选了哪一条,以及它被要求做什么。不在那份列表里的条目,操作根本够不到,无论客户端自己的设置界面显示什么。
第三方客户端的分歧也正出在这份列表上。由系统管理的配置会显示为系统配置,而实现自有隧道的客户端,可能需要先通过 App Intents 发布自己的快捷指令操作,才谈得上可脚本化。如果找不到你的服务商连接,在重建快捷指令之前先读服务商的文档,因为缺的那一环通常是“有没有公开”,而不是点错了。那些教你安装设置小工具的教程描述的是另一个时代,在当下的 iPhone 上照做,得到的是一场漫长的寻找,而不是一个按钮。
完成不等于连接
操作把请求交给系统就返回了。快捷指令报告成功时,认证可能仍在等待提示,连接也可能仍在协商。唯一可信的确认,是你真正想要的那个资源,在所属客户端显示隧道已连接之后被打开。
把凭据完全挡在快捷指令之外。在文本操作里输入、或粘进快捷指令名称里的密码,会随快捷指令一起保存并同步,这对它来说,比客户端本来就在用的钥匙串更糟糕。
策略坐在按钮之上
当“按需”规则匹配当前网络时,断开请求之后可能立刻又重连。受监管设备上的“始终开启”配置完全不给用户选择。快捷指令无法推翻这两种安排中的任何一种,看上去在跟策略较劲的那一个,只是悄悄地输给了它。
这正是支持窄而诚实的意图的理由。两条明确的快捷指令,一条叫连接、一条叫断开,比一个含义取决于你当前状态的开关更能说明会发生什么。它们也更容易测试:从已知状态分别运行,然后看结果。
分五步搭建
创建快捷指令,添加 Set VPN,选择配置,设置操作,然后用正常认证在编辑器里运行一次。接着打开快捷指令的详细信息,选择“添加到主屏幕”,图标按连接而不是按 App 命名,再添加。Apple 的 主屏幕快捷指令指南 覆盖了最后这一步,包括图标的选择。
操作里的选项值得读一遍,而不是想当然。开关在主屏幕上看起来更友好,但当隧道正在连接中或正在恢复时,它的表现比具名操作更差。
每次 iOS 大版本之后都要重测,因为操作的配置列表和“设置”里的措辞都会变。去年能用、今年什么都不做的按钮,通常反映的是命名或公开方式的变化,而不是隧道坏了。
按钮是干什么用的
把它当作通往你本就信任的连接的一道门:点按、认证、打开私有服务。它不安装描述文件,不修复证书,也不会让一个隐藏配置的客户端变得可脚本化。
把这句话写进运行手册、放在快捷指令名称旁边,免得有人花一下午去调试一个根本不可能完成任务的按钮。