UIActivityViewController Facebook和Twitter共享无法在已发布的iOS版本中运行

时间:2015-04-23 07:21:27

标签: ios iphone facebook twitter uiactivityviewcontroller

我们最近发布了分享给fb& amp;的iPhone应用程序。 tw使用UIActivityViewController就像app store上的zigzag app一样。

我的设备工作正常,因为我的设备用于开发。 但是,下载此应用的所有用户都无法使用此功能进行共享。

NSString *txtToShare = @"Please try this awesome iOS app";
NSArray *objectsToShare = [NSArray arrayWithObjects:txtToShare, nil];
UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:nil];

[self presentViewController:activityVC animated:YES completion:^{

}];
if ([activityVC respondsToSelector:@selector(popoverPresentationController)])
{
    // iOS 8+
    UIPopoverPresentationController *presentationController = [activityVC popoverPresentationController];

    presentationController.sourceView = sender; // if button or change to self.view.
}

有人可以告诉我为什么吗?

1 个答案:

答案 0 :(得分:0)

我有同样的问题,我使用以下技术解决了这个问题 声明了两个常量

static NSString *const twitterAppBundleStringForOS8 = @"com.atebits.Tweetie2.ShareExtension";
static NSString *const facebookAppBundleStringForOS8 = @"com.facebook.Facebook.ShareExtension";

if ([self.activityType isEqualToString:UIActivityTypePostToFacebook] || [self.activityType isEqualToString:facebookAppBundleStringForOS8]) {
        text = @"abc";
    }
    else if( [self.activityType isEqualToString:UIActivityTypePostToTwitter] || [self.activityType isEqualToString:twitterAppBundleStringForOS8]){
        text = @"cc";
    }

现在工作正常

当我遇到问题时,我有以下代码

if ([self.activityType isEqualToString:UIActivityTypePostToFacebook] ) {
            text = @"abc";
        }
        else if( [self.activityType isEqualToString:UIActivityTypePostToTwitter] ){
            text = @"cc";
        }

我希望它有所帮助,如果没有,请告诉我。