我正在尝试从主屏幕上的应用程序图标上的 3D 触摸菜单操作呈现共享 UIActivityViewController,我正在执行以下操作:
-(void)application:(UIApplication *)application performActionForShortcutItem:(UIApplicationShortcutItem *)shortcutItem completionHandler:(void (^)(BOOL))completionHandler {
completionHandler([self handleShortcutItem:shortcutItem]);
}
- (BOOL)handleShortcutItem:(UIApplicationShortcutItem *)shortcutItem {
BOOL handled = NO;
if ([shortcutItem.type containsString:@"share"]) {
handled = YES;
UIActivityViewController *activityVC =
[[UIActivityViewController alloc] initWithActivityItems: @[ @"test" ] applicationActivities:nil];
[self.window.rootViewController presentViewController:activityVC animated:YES completion:nil];
}
return handled;
}
此结果是正在启动的应用程序和显示的 UIActivityViewController。我要做的是在不启动应用程序的情况下显示 UIActivityViewController 。
我在 Booking 和 AirBnB 等流行应用程序中看到了这种行为。