UIActivityViewController 共享应用列表为空

UIActivityViewController share apps list empty

我想通过UIActivityViewController分享图片到微信,我的代码如下

UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"提示" message:@"已为您复制消息内容,请在分享内容框中粘贴!" preferredStyle:UIAlertControllerStyleAlert];
    UIAlertAction *cancel = [UIAlertAction actionWithTitle:@"知道了" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
        UIActivityViewController *activityViewController =[[UIActivityViewController alloc] initWithActivityItems:array  applicationActivities:nil];
        activityViewController.excludedActivityTypes = @[UIActivityTypePostToFacebook,UIActivityTypeAirDrop];
        [self presentViewController:activityViewController animated:TRUE completion:nil];
    }];
    [alert addAction:cancel];
    [self presentViewController:alert animated:YES completion:nil];

但是共享弹出菜单变空了

哪里错了?

任何帮助将不胜感激!谢谢

编辑: 我发现我的数组是空的,因为我在那个数组中添加了错误的图像,image url 是错误的。所以我的共享弹出菜单是空的。现在,它解决了!谢谢你们!

我认为这是由于空数组导致的,因此您需要将填充的数组传递给 ActivityController。

 NSArray * array = @[[NSString stringWithFormat:@"pass your data"], [NSURL URLWithString:@"http://www.google.com"]];// this occur due to this
UIActivityViewController *activityViewController =[[UIActivityViewController alloc] initWithActivityItems:array  applicationActivities:nil];
activityViewController.excludedActivityTypes = @[UIActivityTypePostToFacebook,UIActivityTypeAirDrop];
[self presentViewController:activityViewController animated:TRUE completion:nil];

要在 Facebook 中分享,您应该在设备上安装 Facebook 应用程序。