2013-10-25 62 views
1

我有一个基本的UIActivityViewController分享一些文字和网址。分享选项是电子邮件,短信,Twitter和Facebook。一切工作正常在iOS 6中,但在iOS 7中,当我选择Twitter或Facebook,没有触摸任何东西,我的设备自动关闭我的应用程序,打开Safari,并转到我想分享的URL。什么可能导致这个?UIActivityViewController自动“点击”链接的iOS 7

代码(CustomActivityItemProvider是自定义文本子类基于共享者):

if ([UIActivityViewController class]) { // if class exists = ios6+ 

    // Create array for sharing 
    CustomActivityItemProvider *textToShare = [[CustomActivityItemProvider alloc] 
               initWithStandardText:@"Text to share.\n"]; 

    NSURL *urlToShare = iTunesShort ? iTunesShort : [NSURL URLWithString:iTunesLink]; 

    NSArray *activityItems = @[textToShare, urlToShare]; 

    // Show sharing view 
    UIActivityViewController *activityVC = [[UIActivityViewController alloc] 
              initWithActivityItems:activityItems applicationActivities:nil]; 
    activityVC.excludedActivityTypes = @[UIActivityTypePrint, UIActivityTypeCopyToPasteboard, 
             UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll]; 

    [self presentViewController:activityVC animated:TRUE completion:nil];  
} 
+1

能否请您上传代码。 –

+0

确定代码已添加。 –

+0

我已经测试完美的作品。尝试差异。像雅虎谷歌的网址,然后告诉什么hhpening。 –

回答

0

所以我仍然不知道为什么只有短网址是导致此问题,但照顾它的溶液在textToShare中包括urlToShare

// Create array for sharing 
NSString *urlToShare = iTunesShort ? iTunesShort : iTunesLink; 
NSString *textWithUrl = [NSString stringWithFormat:@"Text to share.\n%@", urlToShare]; 
CustomActivityItemProvider *textToShare = [[CustomActivityItemProvider alloc] 
              initWithStandardText:textWithUrl]; 

NSArray *activityItems = @[textToShare];