Good,
I passed TSI about this to Apple, and it seems that this is not a mistake, but a design.
You can resume your activity in the application:continueUserActivity:restorationHandler , which in my case was not called.
Well, my mistake was that you need to return YES in the application:didFinishLaunchingWithOptions: method, otherwise, if you return NO, application:continueUserActivity:restorationHandler not called.
We have implemented FB in our application, so we return a [[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions] , which will return NO.
I changed our code in the application:didFinishLaunchingWithOptions: function to this
if (launchOptions && [[launchOptions allKeys] containsObject:UIApplicationLaunchOptionsUserActivityDictionaryKey]) { return YES; } else { return [[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions]; }
Therefore, the delegate application:continueUserActivity:restorationHandler successfully delegated, and the action can be resumed successfully.
source share