是否可以确定 iOS 应用程序的打开方式?

Is it possible to determine how an iOS app was opened?

iOS 应用程序(例如在 applicationDidBecomeActive: 中)是否可以确定 如何 从哪里 [=16] =] 它被打开了。特别是,如果应用程序被另一个应用程序使用 URL 方案打开,是否可以获取有关触发打开的应用程序的信息?

看看ApplicationDelegate协议中的这个方法:

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

这是当另一个应用程序尝试使用自定义 url 方案打开您的应用程序时调用的内容。根据文档....

Your implementation of this method should open the specified URL and update its user interface accordingly.

但您也可以获得有关来电者的一​​些信息。