如何获取iOS「设置→Safari→扩展」页面的正确URL Scheme?
iOS 设置URL Scheme跳转「设置→Safari→扩展」路径相关结论
已验证的事实
- 跳转Safari设置主页面的可用Scheme为
App-Prefs:SAFARI,iOS 15至iOS 18版本真机测试均可正常唤起 - 部分Safari设置下的二级路径支持在主Scheme后拼接
&path=参数值的方式直接跳转,例如下载项管理、默认搜索引擎设置等入口均支持该写法 - 目前所有公开流传的疑似扩展路径参数(包括
EXTENSIONS、SAFARI_EXTENSIONS、CONTENT_BLOCKERS等),经真机测试均无法生效,调用后会直接回退到Safari设置主页面
无法直接跳转的核心原因
苹果从iOS 15正式开放Safari扩展能力开始,就没有给「Safari→扩展」这个分区配置对外暴露的URL Scheme路由,不存在未被找到的正确参数组合,所有尝试枚举path参数定位该入口的做法都不会有结果,属于系统层面的刻意限制。
可行替代方案
- 合规上架通用方案:直接调用已验证可用的
App-Prefs:SAFARI跳转到Safari设置主页面,配合应用内的可视化提示引导用户手动下滑找到「扩展」选项进入,这是目前App Store内所有带Safari扩展能力的应用通用的引导方式,无审核风险 - 自有扩展专属跳转:如果仅需要引导用户打开当前App自身对应的Safari扩展设置页,不需要走通用设置Scheme,iOS 15及以上系统可直接调用苹果官方公开的
SFSafariApplication.showPreferencesForExtensionAPI实现直达,完全合规,但该方式无法跳转到Safari设置下的全量扩展列表页 - 非上架场景方案:企业内部签名、越狱场景下的应用,可通过逆向提取设置App的路由表拿到对应私有路径,但该类路径属于未公开内容,随iOS版本迭代随时可能失效,绝对不能用于App Store提审版本,否则会触发2.5.1条款被直接拒审
内容的提问来源于stack exchange,提问作者Alon Nasi
相关产品推荐
相关产品推荐

