在IOS应用程序中处理两次启动URL
如果我通过urlscheme启动我的应用程序,我会在在IOS应用程序中处理两次启动URL,ios,url,url-routing,url-scheme,launching-application,Ios,Url,Url Routing,Url Scheme,Launching Application,如果我通过urlscheme启动我的应用程序,我会在application:didFinishLaunchingWithOptions:中的launchoptions中获取url,并在那里处理它并返回YES,但是application:openURL:sourceApplication:annotation:也会被调用,因此url会被处理两次。根据这一点,只有在didFinishLaunchingWithOptions返回否时才应该调用openURL。有人知道为什么会发生这种情况吗 我认为您应该
application:didFinishLaunchingWithOptions:
中的launchoptions中获取url,并在那里处理它并返回YES,但是application:openURL:sourceApplication:annotation:
也会被调用,因此url会被处理两次。根据这一点,只有在didFinishLaunchingWithOptions返回否时才应该调用openURL。有人知道为什么会发生这种情况吗 我认为您应该在:application:openURL:sourceApplication:annotation:
中处理url,因为它可以在应用程序运行时调用,因此application:didfishlaunchingwithoptions:
不会被调用。它只会将其传递到didFinishLaunching。。。方法,这样您就可以知道启动的原因,如果需要,还可以准备,知道您将要打开url
至少,我过去就是这样处理的
希望这有帮助。看来你是对的。我只信任application:openURL:sourceApplication:annotation,而不在launchoptions中使用url。谢谢