阅读364 返回首页    go 同花顺


iOS版本__上传SDK_SDK手册_视频点播-阿里云

  • 环境要求

    iOS系统版本:iOS 7.0以上

  • 安装

    OSS iOS SDK

    上传SDK下载

    • 直接引入Framework

      需要引入OSS iOS SDK framework和VODUpload iOS SDK framework。

      在Xcode中,直接把framework拖入您对应的Target下即可,在弹出框勾选Copy items if needed。

    • 工程中引入头文件

      1. #import <VODUpload/VODUpload.h>

      注意,引入Framework后,需要在工程Build SettingsOther Linker Flags中加入-ObjC。如果工程此前已经设置过-force_load选项,那么,需要加入-force_load <framework path>/AliyunOSSiOS

    • 兼容IPv6-Only网络

      OSS移动端SDK为了解决无线网络下域名解析容易遭到劫持的问题,已经引入了HTTPDNS进行域名解析,直接使用IP请求OSS服务端。在IPv6-Only的网络下,可能会遇到兼容性问题。而APP官方近期发布了关于IPv6-only网络环境兼容的APP审核要求,为此,SDK从2.5.0版本开始已经做了兼容性处理。在新版本中,除了-ObjC的设置,还需要引入两个系统库

      1. libresolv.tbd
      2. SystemConfiguration.framework
  • 创建并初始化回调函数

    1. OnUploadSucceedListener testSuccessCallbackFunc = ^(NSString* filePath){
    2. NSLog(@"file:%@ upload success!", filePath);
    3. };
    4. OnUploadFailedListener testFailedCallbackFunc = ^(NSString* filePath, NSString* code, NSString* message){
    5. NSLog(@"failed code = %@, error message = %@", code, message);
    6. };
    7. // 单位:字节
    8. OnUploadProgressListener testProgressCallbackFunc = ^(NSString* filePath, long uploadedSize, long totalSize) {
    9. NSLog(@"progress uploadedSize : %li, totalSize : %li", uploadedSize, totalSize);
    10. };
    11. OnUploadTokenExpiredListener testTokenExpiredCallbackFunc = ^{
    12. NSLog(@"*token expired.");
    13. // get token and call resmeWithToken.
    14. };
    15. OnUploadRertyListener testUploadRertyListener = ^{
    16. NSLog(@"retry begin.");
    17. };
    18. OnUploadRertyResumeListener testUploadRertyResumeListener = ^{
    19. NSLog(@"retry resume.");
    20. };
    21. VODUploadListener *listener;
    22. listener = [[VODUploadListener alloc] init];
    23. listener.success = testSuccessCallbackFunc;
    24. listener.failure = testFailedCallbackFunc;
    25. listener.progress = testProgressCallbackFunc;
    26. listener.expire = testTokenExpiredCallbackFunc;
    27. listener.retry = testUploadRertyListener;
    28. listener.retryResume = testUploadRertyResumeListener;
  • 初始化

    填写账号信息,有2种方式

    • AK方式

      简单但是不够安全,建议测试环境下使用。

      1. VODUploadClient *uploader;
      2. [uploader init:<accessKeyId>
      3. accessKeySecret:<accessKeySecret>
      4. listener:listener];
    • STS方式

      安全但是较为复杂,建议生产环境下使用。

      1. VODUploadClient *uploader;
      2. [uploader init:<accessKeyId>
      3. accessKeySecret:<accessKeySecret>
      4. secretToken:<secretToken>
      5. expireTime:<expireTime>
      6. listener:listener];
  • 列表管理

    • 添加上传文件

      注意:支持的文件大小<=4G

      1. [uploader addFile:<uploadFilePath>
      2. endpoint:<endpoint> //例如:'https://oss-cn-hangzhou.aliyuncs.com'
      3. bucket:<bucketName> //按实际bucket名称填写
      4. object:<objectKey>];
    • 删除上传文件

      1. [uploader deleteFile:<uploadFilePath>];
    • 获取上传文件列表

      1. [uploader listFiles];
    • 清理上传文件列表

      1. [uploader clearFiles];
  • 上传管理

    • 开始上传

      1. [uploader start];
    • 停止上传

      1. [uploader stop];
    • 暂停上传

      1. [uploader pause];
    • 恢复上传

      1. [uploader resume];
    • 取消单个文件上传

      1. [uploader cancelFile:<uploadFilePath>];
    • 恢复单个文件上传

      1. [uploader resumeFile:<uploadFilePath>];
    • STS方式下,Token超时恢复上传

      1. [uploader resumeWithToken:<accessKeyId>
      2. accessKeySecret:<accessKeySecret>
      3. secretToken:<secretToken>
      4. expireTime:<expireTime>]

最后更新:2016-12-19 22:06:52

  上一篇:go android版本__上传SDK_SDK手册_视频点播-阿里云
  下一篇:go 视频点播控制台操作___视频专区_视频点播-阿里云