You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS扩展中openURL使用疑问:AutoFill扩展返回主应用合规性咨询

AutoFill Credential Provider扩展返回主应用的实现与合规性

关于通过UIResponder调用openURL的可行性与合规性

  • 直接通过UIResponder链寻找并调用openURL:的做法不可靠且违反苹果的扩展规范。AutoFill作为App Extension的一种,苹果明确限制了扩展对UIApplication相关API的访问,禁止直接调用UIApplication.shared.openURL(),同时也不允许通过responder链这类方式绕过限制。
  • 这种绕过行为属于违反《App Store审核指南》中关于扩展权限的规定,大概率会导致应用审核被拒。

正确的实现方式

AutoFill扩展打开主应用的合法方式是使用自身的extensionContext调用open(_:completionHandler:)方法,而不是新建NSExtensionContext实例或遍历responder链。修正后的代码如下:

private func openContainerApp() {
    guard let url = URL(string: "momoshare://") else { return }
    extensionContext?.open(url, completionHandler: { success in
        if !success {
            // 处理打开失败的情况
        }
    })
}

关键说明

  • 必须确保主应用已经在Info.plist中注册了对应的URL Scheme(这里是momoshare),否则无法正常打开。
  • 使用extensionContext是苹果官方认可的扩展与主应用交互的方式,完全符合合规要求,不会触发审核问题。

内容的提问来源于stack exchange,提问作者user26914214

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 12:39:58