SynqLib 是一个简单的 Objective-C 库,它使得将视频上传到 SYNQ 平台 成为可能。
该库使用 AFNetworking 3 与服务器进行通信。它利用配置过的 NSURLSession 在后台管理视频上传。这使得任何情况下都可以完成上传,无论应用是在前台还是后台。
要运行示例项目,首先克隆仓库,然后从 Example 目录运行 pod install
命令。
SynqLib 通过 CocoaPods 提供支持。要安装它,只需在 Podfile 中添加以下行即可
pod "SynqLib"
#import <SynqLib/SynqLib.h>
// Create SQVideoUpload objects for each video to upload,
// add PHAsset for the videos
SQVideoUpload *video1 = [[SQVideoUpload alloc] initWithPHAsset:nil];
SQVideoUpload *video2 = [[SQVideoUpload alloc] initWithPHAsset:nil];
// Add upload parameters for each video, as a dictionary
// This would be the parameters returned from Synq API function video/upload, and must contain the following keys:
// "acl"
// "key"
// "Policy"
// "action"
// "Signature"
// "Content-Type"
// "AWSAccessKeyId"
NSDictionary *uploadParams1;
NSDictionary *uploadParams2;
[video1 setUploadParameters:uploadParams1];
[video2 setUploadParameters:uploadParams2];
// Finally, add all SQVideoUpload objects to an array
NSArray *assetsArray = [NSArray arrayWithObjects:video1, video2, nil];
// Use the singleton instance to initiate an upload for the video array
[[SynqLib sharedInstance] uploadVideoArray:assetsArray
uploadProgressBlock:^(double progress) {
NSLog(@"Upload progress: %f", progress);
// Report progress to UI
} uploadSuccess:^(NSURLResponse *response) {
NSLog(@"Upload success: %@", response);
// Handle upload success
} uploadError:^(NSError *error){
NSLog(@"Upload error: %@", error);
// Handle upload error
}];
此库需要 iOS 8 或更高版本
Kjartan, [email protected]
SynqLib 在 MIT 许可证下提供。有关更多信息,请参阅 LICENSE 文件。