1

テキストと URL を共有する基本的な UIActivityViewController があります。共有オプションは、電子メール、SMS、Twitter、および Facebook です。iOS 6 ではすべて正常に動作しますが、iOS 7 で Twitter または Facebook を選択すると、何も触れずにデバイスが自動的にアプリを閉じ、Safari を開いて、共有しようとしている URL に移動します。何が原因でしょうか?

コード (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];    
}
4

1 に答える 1

0

したがって、短縮 URL だけがこの問題を引き起こしている理由はまだわかりませんがurlToSharetextToShare.

// 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];
于 2013-11-19T16:29:04.430 に答える