2017-02-09 47 views
0

我試圖與微信分享圖片,網址和文字,但我收到此消息。我很簡單地使用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

回答

1

對於錯誤「無法分享到這種類型的內容」,在微信,檢查重要的變量是鏈接。以下代碼適用於我

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

2

我收到了完全相同的錯誤對話框,並解決它如下。
傳遞只是文本將始終產生此錯誤。不過,如果我將它與網址或圖片相結合,那麼微信將按正常方式進行。

我敢肯定這使用在同一時間工作,如果微信只是接受純文本將是巨大的 - 就像所有其他應用程序做(的WhatsApp,線,...)

相關問題