日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

運行播放器Demo源碼

Demo源碼提供了播放器的常用功能示例,集成播放器SDK前,可以先運行Demo源碼以了解和體驗播放器SDK的功能。您也可以不單獨集成SDK,直接集成完整的Demo源碼來直接使用播放器SDK,或根據需要集成Demo源碼中的部分模塊來使用。

體驗Demo

體驗Demo提供了完整的產品級的交互UI和業務源碼,包含短視頻、播放器和上傳等SDK。您可以掃描二維碼下載Demo App體驗阿里云播放器相關功能。二維碼地址請參見Demo體驗。同時阿里云也免費提供Android播放器SDK Demo源碼。iOS端播放器SDK Demo源碼中內置了UI,以下分別介紹使用和不使用內置的UI來集成播放器Demo源碼的場景及操作步驟。

場景

說明

運行完整Demo(含內置UI)

適用于需要使用內置UI,且想要使用Demo源碼中提供的所有功能。

此場景下無需單獨集成SDK,直接導入完整的Demo源碼并運行即可。

集成Demo模塊(含內置UI)

適用于需要使用內置UI,但只想使用Demo源碼中的部分功能。

此場景下無需單獨集成SDK,只需選擇性的導入Demo源碼中的功能模塊運行即可。

集成Demo(不含內置UI)

適用于不需要內置UI(自定義UI或不使用UI),又想省去自己開發的麻煩,直接使用Demo中封裝好的功能。

此場景下需要先集成SDK,再集成Demo中的相關文件。

環境要求

類別

說明

系統版本

支持iOS 9.0及以上版本。

手機芯片

架構要求:

  • armv7。

  • arm64。

開發工具

推薦使用Xcode,本文操作步驟基于Xcode開發。下載地址:Xcode

前提條件

下載iOS端播放器SDK包(包含了播放器SDK及Demo源碼),推薦下載使用最新版本。下載地址請參見播放器SDK

解壓后的目錄結構如下:

文件名

作用

demo

播放器的Demo源碼。Demo源碼的目錄結構參見表 2。

doc

播放器API文檔。

sdk

播放器SDK的framework庫。

ReleaseNote

版本說明。

demo目錄結構如下:

模塊名

模塊作用

AlivcBasicVideo

播放器基礎核心模塊,對應播放器SDK Api調用邏輯。

說明

此模塊必須導入,播放器SDK核心庫。

AlivcPlayVideo

播放相關模塊,對應播放器調用的示例代碼。

說明

此模塊基于AlivcBasicVideo,使用此模塊必須導入AlivcBasicVideo。

AlivcCommon

阿里云項目公共模塊,包括一些工具類。

說明

此模塊必須導入,無論導入Demo中的哪一個和播放器相關的模塊,都需要導入此模塊。

AliyunVideoClient_Entrance.xcodeproj

Xcode組織工程項目的文件。

AliyunVideoClient_Entrance.xcworkspace

阿里云項目工程總入口,需要打開xcworkspace文件使用Xcode編譯運行。

Podfile

使用cocoapods管理第三方庫文件。

Podfile.lock

使用cocoapods生成的下載的第三方庫版本相關信息。

Pods

使用cocoapods生成的下載的第三方庫文件目錄。

運行完整Demo(含內置UI)

通過使用Xcode運行完整的播放器SDK Demo包,可不再單獨集成SDK,直接開始使用包含了內置UI的播放器功能。

在demo目錄下選擇AliyunVideoClient_Entrance.xcworkspace,雙擊使用Xcode打開工程。

image.png

使用Xcode打開工程后,選中紅框中AliyunVideoClient_Entrance,然后將bundle identifier替換為自己的。

image.png

替換bundle id的同時,如果下載的播放器Demo指向的播放器SDK版本是5.5.3.0以上的,則需要在Info中增加對license的支持。申請配置license,將獲取的licenseKey填入Info中的AlivcLicenseKey條目的Value中;將license.crt文件放到工程如紅框目錄下。

image.png

集成Demo模塊(含內置UI)

通過選擇導入播放器SDK Demo源碼中的部分模塊,選擇性的使用封裝好的包含內置UI播放器的部分功能。

  1. AlivcBasicVideoAlivcPlayVideoAlivcCommon文件夾整體拷貝到自己建的代碼工程中去。

    可以在拷貝上述三個文件夾的時候,分別將文件夾中的Example、LiCENSE、README.md文件刪除,只保留podspc和同名子文件夾內容,減少工程包體大小。

    image.png

  1. 在上述三個文件夾同級目錄下創建Podfile文件,實現組件化工程。按照下圖紅框的形式pod本地podspec文件。

    image.png
  2. 執行pod install后,會自動生成pod相關內容,里面包含有集成到工程的AlivcBasicVideoAlivcPlayVideoAlivcCommon文件夾內容,以及播放器SDK pod集成文件。

    image.png
  3. 根據體驗Demo編譯運行界面,含有內置UI功能代碼入口在AlivcPlayVideo組件下AlivcPlayVideo/Classes文件夾下內容,分別是:

    UI功能

    UI功能代碼文件夾入口

    UI功能代碼入口ViewController

    視頻播放

    PlayConfig

    AlivcVideoPlayConfigViewController

    播放列表

    PlayList

    SimplePlayerViewController

    直播時移

    TimeShift

    AlivcVideoPlayTimeShiftViewController

    在工程首頁ViewController中執行跳轉到相應的UI功能代碼入口ViewController中。如視頻播放界面跳轉邏輯如下:

    #import "AlivcVideoPlayConfigViewController.h"
    
    // 跳轉邏輯
    AlivcVideoPlayConfigViewController *vc = [[AlivcVideoPlayConfigViewController alloc] init];
    [self.navigationController pushViewController:vc animated:YES];
    
    說明

    如果不需要全部內置UI功能,可以自行選擇刪除相應的AlivcPlayVideo組件的UI功能代碼文件夾入口,以及在AlivcBasicVideo組件下的AlivcBasicVideo/Assets文件夾下的對應資源文件。

集成Demo(不含內置UI)

播放器Demo中包含許多內置UI,如果您不需要內置UI(自定義UI或不使用UI),又想省去自己開發的麻煩,直接使用Demo中封裝好的功能,則可以通過以下步驟實現。

  1. 集成播放器SDK。

    可以直接復用AlivcBasicVideo組件下的AlivcBasicVideo.podspec,pod集成播放器SDK。

    image.png

    也可以自行在工程Podfile文件中pod集成,或是工程合適的地方本地集成,請參見集成iOS端播放器SDK

  2. 集成Demo中部分代碼。

    可以使用AlivcBasicVideo組件文件夾下AlivcBasicVideo/Classes/AlivcBasicVideo路徑下的文件選擇性集成到工程中使用。

    Classes/AlivcBasicVideo/LongBasicView文件夾下的AlivcLongVideoPlayView文件是封裝好的播放窗口View組件,可以將AlivcLongVideoPlayView文件及依賴的其他文件集成到工程中進行使用。

  3. 使用AlivcLongVideoPlayView。

    在播放頁面添加AlivcLongVideoPlayView實例。

    #import "AlivcLongVideoPlayView.h"
    
    @interface AlivcLongVideoViewController ()<AliyunVodPlayerViewDelegate>
    
    @property (nonatomic, strong) AlivcLongVideoPlayView *playerView;
    
    @end
    
    - (void)viewDidLoad {
    	[self.view addSubview:self.playerView];
    }
    
    - (AlivcLongVideoPlayView *)playerView {
     if (!_playerView) {
     _playerView = [[AlivcLongVideoPlayView alloc]init];
     _playerView.delegate = self;
     }
     return _playerView;
    }

    調用播放控制相關邏輯。

    /// 準備播放,可根據對外的方法任選調用
    // 傳入url進行準備播放
    NSURL *URL = [NSURL URLWithString:@"xxxx"]; // xxxx 代表url字符串
    [self.playerView playViewPrepareWithURL:URL];
    
    // 傳入AlivcVideoPlayPlayerConfig實例進行準備播放
    AlivcVideoPlayPlayerConfig *config = [[AlivcVideoPlayPlayerConfig alloc] init];
    config.sourceType = SourceTypeUrl;
    config.urlSource = [[AVPUrlSource alloc] urlWithString:@"xxxx"];
    [self.playerView playWithPlayerConfig:config];
    
    // 開始播放
    [self.playerView start];
    // 暫停播放
    [self.playerView pause];
    // 停止播放
    [self.playerView stop];
    // 銷毀播放器
    [self.playerView releasePlayer];
    
    說明

    上述代碼展示了部分接口,其余部分的接口可以參照AlivcBasicVideo組件文件的示例代碼來使用,也可以根據播放器SDK的API接口文檔自己創建播放器實例進行播放。

故障排除

遇到播放器相關問題可以參考常見問題進行排查解決。