閱讀364 返回首頁    go 阿裏雲 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 視頻點播控製台操作___視頻專區_視頻點播-阿裏雲