iOS学习专题大前端开发iOS点点滴滴

iOS相册视频读取PHAsset到ALAsset转换

2018-02-05  本文已影响44人  link_hui

问题

iOS上传视频时从相册选择视频上传失败,错误是“视频文件不存在”。

排查过程

解决

将PHAssert转换为ALAssert格式的路径

//输入1:asset.localIdentifier 形如:A918D262-4915-4B4D-98DB-018A7D5860EE/L0/001
//输入2:asset.localURL 形如:file:///var/mobile/Media/DCIM/100APPLE/IMG_0632.MOV
            NSString *localID = asset.localIdentifier; 
            NSURL *url = asset.localURL;
            NSArray *temp = [localID componentsSeparatedByString:@"/"];
            NSString *uploadVideoFilePath = nil;
            if (temp.count > 0) {
                NSString *assetID = temp[0];
                NSString *ext = url.pathExtension;
                if (assetID && ext) {
                    uploadVideoFilePath = [NSString stringWithFormat:@"assets-library://asset/asset.%@?id=%@&ext=%@", ext, assetID, ext];
                }
            }
//输出:得到的路径uploadVideoFilePath格式如下:assets-library://asset/asset.MOV?id=A918D262-4915-4B4D-98DB-018A7D5860EE&ext=MOV

上一篇 下一篇

猜你喜欢

热点阅读