当从 UIActivityViewController 调用时,WhatsApp 在选择收件人后冻结

Posted

技术标签:

【中文标题】当从 UIActivityViewController 调用时,WhatsApp 在选择收件人后冻结【英文标题】:When Called From UIActivityViewController WhatsApp Freezes After a Recipient Is Selected 【发布时间】:2016-04-13 01:30:29 【问题描述】:

我正在使用 UIActivityViewController 分享我的 ios 应用程序。

当从选项列表中选择 WhatsApp 时,它会将我带到正确的屏幕。我可以四处走动,所有的按钮都可以工作。

但是,一旦我选择了收件人,WhatsApp 就会冻结。

有人知道这里发生了什么吗?有没有人遇到过这个错误?

编辑(添加代码)

这是我用来调用UIActivityViewController的代码:

- (void) sharePressed:(UIBarButtonItem *)sender 

NSString* shareText = @"Hello World!";

UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:@[shareText] applicationActivities:nil];

[self presentViewController:controller animated:YES completion:nil];


NSLog(@"This method ran: sharePressed");

它是最基本的。它适用于除 WhatsApp 之外的所有应用。

【问题讨论】:

请添加一些代码 @DarjiJigar 我刚刚添加了代码。感谢您提供的任何帮助 【参考方案1】:

试试这个代码

- (IBAction)shareButton:(UIBarButtonItem *)sender

    NSString *textToShare = @"Look at this awesome website for aspiring iOS Developers!";
    NSURL *myWebsite = [NSURL URLWithString:@"http://www.codingexplorer.com/"];

    NSArray *objectsToShare = @[textToShare, myWebsite];

    UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:nil];

    NSArray *excludeActivities = @[UIActivityTypeAirDrop,
                                   UIActivityTypePrint,
                                   UIActivityTypeAssignToContact,
                                   UIActivityTypeSaveToCameraRoll,
                                   UIActivityTypeAddToReadingList,
                                   UIActivityTypePostToFlickr,
                                   UIActivityTypePostToVimeo];

    activityVC.excludedActivityTypes = excludeActivities;

    [self presentViewController:activityVC animated:YES completion:nil];

【讨论】:

感谢 Darji,这是很好的代码!我认为该错误实际上是 whatsapp 或 uiactivityviewcontroller 的内部问题,因为我使用 UIActivityViewController 的其他应用程序昨晚无法在 whatsApp 上共享。不过今天早上,尽管我没有更改代码中的任何内容,但一切正常! 我也面临同样的问题,但如果你有任何替代的请分享,我仍然没有找到任何解决方案 @MilapKundalia 如果你想要自定义库?【参考方案2】:

我认为该错误实际上是whatsapp 或UIActivityViewController 的内部问题,因为我使用UIActivityViewController 的其他应用程序昨晚无法在whatsApp 上分享。不过今天早上,尽管我没有更改代码中的任何内容,但一切正常!

【讨论】:

【参考方案3】:

我认为是昨天更新后 WhatsApp 中的一个错误。

更新:您可以发送 NSUrl 而不是 NSString。

【讨论】:

以上是关于当从 UIActivityViewController 调用时,WhatsApp 在选择收件人后冻结的主要内容,如果未能解决你的问题,请参考以下文章

当从 mapStateToProps 返回整个流对象时,为啥不呈现流标题?

当从 UIActivityViewController 调用时,WhatsApp 在选择收件人后冻结

当从网页获取不到元素时,

当从 UIStoryboard 实例化 ViewController 时,isMemberOfClass 返回 no

当从 android 访问 API 时,sails.js 会话变量会丢失

当从其他操作调用操作时,@Check 不起作用