当iOS应用程序处于前台时处理小部件单击操作

时间:2018-05-22 06:26:42

标签: ios objective-c widget

单击小部件时,如果应用程序未运行,我可以使用以下方法处理 -

(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url 

但如果应用程序在后台如何处理该操作?

1 个答案:

答案 0 :(得分:2)

如果App处于后台模式,

handleOpenURL将被调用。

  

官方文件:
  如果您的应用被暂停时网址到达,或者   在后台运行,系统将您的应用程序移动到前台   在调用此方法之前。

影响呼唤的是什么:

  

如果委托从两个委托中返回NO,则不会调用此方法   application:willFinishLaunchingWithOptions:和   application:didFinishLaunchingWithOptions:方法。 (如果只有一个   这两个方法实现后,其返回值决定了是否   调用此方法。)如果您的应用程序实现了   applicationDidFinishLaunching:方法代替   application:didFinishLaunchingWithOptions:,调用此方法   在初始化应用程序后打开指定的URL。

从iOS9.0开始,使用以下方法会更好:

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options NS_AVAILABLE_IOS(9_0);