UIActivityViewController => LaunchServices:invalidationHandler被调用
我正在玩Airdrop的想法。 Apple运行示例代码时出错:
https://developer.apple.com/library/ios/samplecode/sc2273/Introduction/Intro.html
错误消息是:
LaunchServices: invalidationHandler called
问题显然是由UIActivityViewController
引起的。 相关代码在#pragma mark - Actions
如果您可以查看此文件的 #pragma mark - Actions
。
它仅在设备(iPhone和iPad)上运行时显示错误消息。 如果在模拟器(iPhone和iPad)上运行,这一切都很好。 这是什么原因? 有关如何解决它的任何想法? 它可能是一个错误吗?
以下提出了类似的问题,其中任何一个似乎都无法回答这个问题:
LaunchServices:invalidationHandler被调用 – iOS 8共享表
通过UIActivityViewController分享到Twitter / Facebook等导致崩溃
目前UIActivityViewController- LaunchServices:invalidationHandler被调用
这是Apple方面的一个错误。 来自开发者论坛 :
该日志消息不表示您的任何错误。
你必须摆脱调用“isAvailableForServiceType:”的if语句。 看起来应该是这样的。 祝你好运!
SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter]; [tweetSheet setInitialText:@"Great fun to learn iOS programming at appcoda.com!"]; [self presentViewController:tweetSheet animated:YES completion:nil]; if ([tweetSheet respondsToSelector:@selector(popoverPresentationController)]) { // iOS 8+ UIPopoverPresentationController *presentationController = [tweetSheet popoverPresentationController]; presentationController.sourceView = sender; // if button or change to self.view. }