gpt4 book ai didi

swift - Swift 中的应用程序 openURL

转载 作者:搜寻专家 更新时间:2023-10-31 08:03:30 26 4
gpt4 key购买 nike

我在使用 Appdelegate 方法 OpenURL 时遇到问题。

我已经设置了导入的 UTI 和文档类型。但是,当我从邮件附件中打开我的应用程序时,应用程序会在我实现该方法后立即崩溃。

折旧的 handleOpenURL 有效,但 OpenURL 无效?

目前我在实现中没有代码,只是返回 true。

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String, annotation: AnyObject?) -> Bool {
return true
}

崩溃显示 Thread 1: EXC_BAD_ACCESS (code-1, address-0x0)

我真的不想使用已弃用的方法。

最佳答案

这个问题让我头疼了一个星期。
使用微信/LinkedIn 等社交媒体登录后,我的应用程序一直崩溃。但 Facebook 和 Google 登录工作正常。

我注意到我的应用程序在确认登录微信应用程序后会一直崩溃并进入前台。并出现BAD EXCESS错误。我已尝试在 AppDelegate 上删除我的应用程序打开 url 方法,应用程序不会崩溃,但社交媒体登录操作无法正常运行。所以我发现我的问题出在特定方法上。在网上搜索后,我发现我正在使用 已弃用的 ApplicationOpenUrl 方法 作为来自 https://developer.apple.com/documentation/uikit/uiapplicationdelegate/1623073-application 的引用

func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
return true
} // this method is deprecated in iOS 9 https://developer.apple.com/documentation/uikit/uiapplicationdelegate/1623073-application

请注意,已弃用的版本正在使用 annotation:Any,如果您桥接到微信等 Obj-c 框架,这将导致问题。
所以我所做的是,将我的代码换成新格式

func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {
let sourceApplication = options[UIApplicationOpenURLOptionsKey.sourceApplication] as? String
let annotation = options[UIApplicationOpenURLOptionsKey.annotation]
let application = app

return true
}

希望对您有所帮助。它也将成为我的功能引用。感谢 StackOverflow

关于swift - Swift 中的应用程序 openURL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26178324/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com