iOS 18.0 共享扩展打开应用程序 URL 无法工作

问题描述 投票:0回答:1

iOS 18.0 共享扩展打开应用程序 URL 无法工作

Xcode 16 斯威夫特 5.9

private func openMainApp() {
        let urlScheme = "AppName://"
        if let url = URL(string: urlScheme) {
            
            if self.openURL(url) {
                print( "RUN : APP")
            } else {
                print( "NOT RUN : APP")
            }
            close()
        }
    }
    
    @objc private func openURL(_ url: URL) -> Bool {
        var responder: UIResponder? = self
        while responder != nil {
            if let application = responder as? UIApplication {
                return application.perform(#selector(openURL(_:)), with: url) != nil
            }
            responder = responder?.next
        }
        return false
    }

我还在AppName中放入了我的应用程序名称,并确认它在iOS 17版本中正常工作,但在18版本中不起作用。

我以为应用程序的名称不同 我改了名字 我通过模拟其他应用版本检查过,但只有 iOS 18 才会出现这种情况。 另外,当你用真实设备构建它时,它仍然无法工作。

url ios18
1个回答
0
投票
@discardableResult
@objc func openURL(_ url: URL) -> Bool {
    var responder: UIResponder? = self
    while responder != nil {
        if let application = responder as? UIApplication {
            application.open(url, options: [:]) { success in
                if success {
                    print("App opened successfully")
                } else {
                    print("Failed to open app")
                }
            }
            return true
        }
        responder = responder?.next
    }
    return false
}
© www.soinside.com 2019 - 2024. All rights reserved.