繁体   English   中英

Google Drive SDK iOS-使用NSData(不是NSFileHandle)上传大视频ALAssetRepresentation吗?

[英]Google Drive SDK iOS - Upload LARGE video ALAssetRepresentation using NSData (not NSFileHandle)?

这个例子 ...

https://code.google.com/p/google-api-objectivec-client/wiki/Introduction#Uploading_Files

...使用NSFileHandle ...

NSFileHandle *fileHandle = [NSFileHandle fileHandleForReadingAtPath:path];
if (fileHandle) {
  NSString *mimeType = @"image/jpeg";
  GTLUploadParameters *uploadParameters = [GTLUploadParameters uploadParametersWithFileHandle:fileHandle
                                                                                     MIMEType:mimeType];

...这意味着您需要将(ALAssetRepresentation)持久化到磁盘上才能获得NSFileHandle,而不是仅使用ALAssetRepresentation getBytes:和NSData ...

GTLUploadParameters *uploadParameters = [GTLUploadParameters uploadParametersWithData:uploadData
                                                                             MIMEType:fileObj.mimeType];

...是否可以将ALAssetRepresentation NSData流式传输到GTLServiceDrive查询?

尝试ALAssetRepresentation getBytes:将大视频插入内存会导致崩溃。

另外,将(ALSssetRepresentation)重新(持久化​​)到磁盘似乎是浪费的-额外的处理时间和空间(可能不存在)。

当然,可以使用Google Drive iOS SDK和直接ALAssetRepresentation流NSData来实现此目的的好方法吗?

DriveSDK仅与NSFileHandle一起使用,据我所知,除了持久存储到磁盘之外,没有办法在ALAssetRepresentation和NSFileHandle之间进行转换。 请参阅此相关的堆栈溢出问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM