• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

iOS 无法使用 UIDocumentInteractionController 将视频分享到 Whatsapp

[复制链接]
菜鸟教程小白 发表于 2022-12-12 16:50:32 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

它成功重定向到Whatsapp应用程序。没有预览框架,点击发送时弹出错误消息“无法发送此视频。请选择其他视频。

这是我的代码。

- (void)shareVideo {
NSLog(@"[WhatsAppShare] sharing video");
//NSString *nativePath = [[NSString alloc] initWithCString:path encoding:NSASCIIStringEncoding];
NSString *nativePath=[[NSBundle mainBundle] pathForResource"video" ofType"mp4"];

// Save video to path in documents directory
NSString *savePath = [NSHomeDirectory() stringByAppendingPathComponent"Documents/whatsAppTmp.wam"];

if([[NSFileManager defaultManager] fileExistsAtPath:savePath]){
    if([[NSFileManager defaultManager] removeItemAtPath:savePath error:nil]){
        [self shareVideoAtNativePath:nativePath SavePath:savePath];
    }
} else {
    [self shareVideoAtNativePath:nativePath SavePath:savePath];
}}

- (void)shareVideoAtNativePathNSString*)nativePath SavePathNSString*)savePath{
NSError*error;
BOOL isSuccess=[[NSFileManager defaultManager] copyItemAtPath:nativePath toPath:savePath error:&error];
if(isSuccess){
    // Create interaction controller
    self.documentInteractionController          = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:savePath]];
    self.documentInteractionController.UTI      = @"net.whatsapp.movie";
    self.documentInteractionController.delegate = self;

    [self.documentInteractionController presentOpenInMenuFromRect:CGRectMake(0, 0, 1, 1)
                                                           inView:[self view]
                                                         animated:YES];
} else{
    NSLog(@"error %@", error);
}
}



Best Answer-推荐答案


我们观察到了完全相同的问题。在最近更新 WhatsApp 之前,一切正常。这可能是 WhatsApp 方面的错误。

以下是解决此问题的方法:

  • 不要使用wam文件,直接使用mp4文件。所以在你的情况下,只需调用

    [self shareVideoAtNativePath:nativePath SavePath:nativePath];
    
  • 将 UTI 更改为 public Mpeg4:

    self.documentInteractionController.UTI = @"public.mpeg-4";
    

这似乎解决了我们的问题。但是,有一个缺点是,共享对话框现在包含许多其他可以打开 mp4 文件的应用程序/服务。

关于iOS 无法使用 UIDocumentInteractionController 将视频分享到 Whatsapp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33406138/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap