UIActivityViewController不与微信分享

问题描述:

我试图与微信分享图片,网址和文字,但我收到此消息。我很简单地使用UIActivityViewController与微信共享内容。但无法分享。UIActivityViewController不与微信分享

enter image description here

这里是我的代码:

UIImage * shareImage = [UIImage imageNamed:@"igo-logo-small"]; 
UINavigationController * nav = fromVC.navigationController; 

// error handling 
NSString * error = nil; 
for (;;) { 

    // sanity 
    if (text == nil || url == nil || shareImage == nil || nav == nil) { 

     error = @"arguments not all valid"; 
     break; 
    } 

    // setup share controller 
    UIActivity *activity = [[UIActivity alloc] init]; 
    NSArray *applicationActivities = [[NSArray alloc] initWithObjects:activity, nil]; 
    FilteredActivityViewController * activityController = [[FilteredActivityViewController alloc] initWithActivityItems:@[text, shareImage, url] applicationActivities: applicationActivities]; 

    if (activityController == nil) { 

     error = @"share controller nil"; 
     break; 
    } 

    // success - made it to end 
    [nav presentViewController:activityController animated:YES completion:nil]; 
    activityController.completionWithItemsHandler = ^(NSString *activityType, BOOL completed, NSArray *returnedItems, NSError *activityError) { 
     NSLog(@"completionWithItemsHandler, activityType: %@, completed: %d, returnedItems: %@, activityError: %@", activityType, completed, returnedItems, activityError); 
     if ([activityType isEqualToString:@"com.apple.UIKit.activity.CopyToPasteboard"] && completed) { 
      [MBProgressHUD showSuccessWithoutImage:@"Copied" toView:nav.view]; 
     } 
    }; 
+0

你解决呢?我的应用程序显示相同,它用于工作。 – Pierre

对于错误“无法分享到这种类型的内容”,在微信,检查重要的变量是链接。以下代码适用于我

UIActivityViewController *activityView = [[UIActivityViewController alloc] initWithActivityItems:@[@"SampleMessage", [UIImage imageNamed:@"sampleImage"], [NSURL URLWithString:@"http://www.google.com"]] applicationActivities:nil]; 

在你的代码中,我对你的url变量有怀疑。你能否检查它是否是一个合适的URL,因为我看不到你是如何在你的代码中初始化它的。尝试上面的代码,看看它是否适用于您,或发布您的整个共享代码,以便我们可以帮助您解决问题。

+0

这似乎有点奇怪。为什么必须有图片或网址分享?能更熟悉微信的人可以了解一些情况吗? – antimatter

+0

不幸的是,当我们在UIActivityViewController中使用它时,WeChat并不接受文本,所以我们必须添加图片/网址才能工作。 – Pops

我收到了完全相同的错误对话框,并解决它如下。
传递只是文本将始终产生此错误。不过,如果我将它与网址或图片相结合,那么微信将按正常方式进行。

我敢肯定这使用在同一时间工作,如果微信只是接受纯文本将是巨大的 - 就像所有其他应用程序做(的WhatsApp,线,...)