我无法通过UIActivityViewController和Twitter应用程序共享动画GIF。我得到的结果是静态图像,即动画的第一帧。
使用相同的UIActivityViewController,我可以通过Slack,Facebook Messenger和Messages应用程序共享动画GIF。 Twitter似乎是个例外。
GIF存储为NSData对象。我正在初始化活动控制器,并将对象传递给它。该图片的总大小约为700kb-远远低于手机的5mb上限。
这是使用iPhone X和iOS 12.2完成的
[self.view animatedGif:^(NSData *gifData) {
// make sure we perform UI changes on the main thread via GCD
dispatch_async(dispatch_get_main_queue(), ^{
UIActivityViewController *avc = [[UIActivityViewController alloc]
initWithActivityItems:@[gifData]
applicationActivities:nil];
[self presentViewController:avc animated:YES completion:nil];
});
}];
Twitter仅将结果显示为单个图像-动画的第一帧。如何获取并发送和显示整个动画?