iOS 应用的 AppDelegate 中打开 URL 方法的区别
Difference between open URL methods in AppDelegate of iOS app
我在我的 AppDelegate 文件中使用这个方法来处理应用程序打开 URL 方案
func application(_ application: UIApplication, open url: URL,
sourceApplication: String?, annotation: Any) -> Bool {}
后来我添加了其他方法(iOS需要9.0)
func application(_ application: UIApplication, open url: URL,
options: [UIApplicationOpenURLOptionsKey : Any]) -> Bool {}
现在我看到第二种方法处理所有应用启动。
- 这些方法有什么区别?
- 我是否应该用相同的逻辑填充它们,这样我的第一个方法将只在 iOS 8 个设备上执行。
- 如果我对支持不感兴趣,我可以删除我的第一个方法吗iOS8
Yes why not... you can delete ios 8 supporting open url method and update to ios 9 open url method...
iOS 4.0 到 iOS 9.0 支持第一种方法。现在已弃用。
从 9.0 iOS 开始为 openURL 提供新方法,这是您的第二种方法。
两种方法的目的相同。所以如果想支持 iOS 8 也比保留这两种方法,否则删除不推荐使用的方法。
您可以在 UIKit 框架中看到这个 -> UIApplication.h(检查下图)
我在我的 AppDelegate 文件中使用这个方法来处理应用程序打开 URL 方案
func application(_ application: UIApplication, open url: URL,
sourceApplication: String?, annotation: Any) -> Bool {}
后来我添加了其他方法(iOS需要9.0)
func application(_ application: UIApplication, open url: URL,
options: [UIApplicationOpenURLOptionsKey : Any]) -> Bool {}
现在我看到第二种方法处理所有应用启动。
- 这些方法有什么区别?
- 我是否应该用相同的逻辑填充它们,这样我的第一个方法将只在 iOS 8 个设备上执行。
- 如果我对支持不感兴趣,我可以删除我的第一个方法吗iOS8
Yes why not... you can delete ios 8 supporting open url method and update to ios 9 open url method...
iOS 4.0 到 iOS 9.0 支持第一种方法。现在已弃用。 从 9.0 iOS 开始为 openURL 提供新方法,这是您的第二种方法。
两种方法的目的相同。所以如果想支持 iOS 8 也比保留这两种方法,否则删除不推荐使用的方法。
您可以在 UIKit 框架中看到这个 -> UIApplication.h(检查下图)