环境要求

名称 要求
Xcode版本 Xcode9.0及以上。
模拟器版本 目前长视频工程支持真机和模拟器编译。
CUP架构支持 ARM64、ARMV7 、ARMV7s。
运行系统 iOS 9.0 及以上。

Demo下载

打开工程。

下载之后,你会看到如下图所示的结构目录,请通过红框中的AliyunVideoClient_Entrance.xcworkspace来打开工程。
目录结构说明:
文件名 说明
AlivcPlayPublic 视频播放公共组件。
AlivcLongVideo 长视频的业务代码。
AlivcVideoPlay 视频播放相关代码。
AlivcAbstraction 整个工程的一些业务抽象。
AlivcFramework 播放器SDK使用cocoapods集成,此文件夹暂时无用。
Assets.xcassets 公有的图片。
AppSupportFiles 工程初始化自带文件。
Categories 类目。包含各种类的分类。
Config 配置。包含宏定义文件,全局配置文件,全局常量文件,颜色配置文件。
Home 工程首页的相关代码。
Frameworks 系统框架。包含导入的系统的框架。
Helpers 帮助类。包含网络,数据库,归档,定位,字符串等操作类的封装和实现。
Resources 全局的资源。包含plist,image,html,bundle,Localizable.strings等。
Utilites 工具类,一些非对象的,而是类方法调用的类 ,一些功能的抽象类。
Vendors 第三方库。部分需要修改或者不支持cocoapod的第三方的框架引入。
Pods 通过pod管理的第三方库。

开始编译

  • 方式1:使用模拟器调试。
    demo支持使用模拟器调试。选择需要调试的设备后,即可开始模拟器调试。
  • 方式2:使用真机调试。
    此时,你的电脑因为没有我们的证书,会呈现如下图所示的效果:请先配置好自己的真机调试环境,你可以通过profile文件和登录开发者账号两种方式来进行真机配置,具体的需要你自己去完成配置申请开发者账号证书配置完成后,接着你可以通过command + R键或者点击xcode左上角的三角形状的运行按钮来运行工程。

长视频模块集成

长视频解决方案作为一个解决方案,适用于在线教育、新型视频网站(融媒体场景)。包含的主要功能有:视频播放,展示视频分类,有vip非vip的区别,能展示视频广告,图片广告,跑马灯,视频水印,视频打点,视频下载等。

  1. 播放器SDK集成:
    因为长视频播放视频都是用AliPlayerSDK,所以集成长视频需要先集成AliPlayerSDK。
    • 方式1:使用cocoapods集成。

      使用语句pod ‘AliPlayerSDK_iOS’,执行pod install即可完成播放器SDK集成。

    • 方式2:手动集成。
      如下图所示:将SDK文件拷贝到工程,然后添加到Embedded Binaries,即可使用播放器SDK。
  2. 业务代码文件拷贝。
    要拷贝的代码文件分2个小模块。
    • 整个工程依赖的基础代码与公共组件。如图所示,你需要把以下红框里文件拷贝到你的工程中。
      从上到下分别是:
      • AlivcPlayListRequest文件夹:播放组件。
      • Categories文件夹:工程用到的分类集合。
      • Config文件夹:工程配置集合。
      • Helpers文件夹:帮助类集合。
      • Utilites文件夹:相关工具类。
    • 长视频本身的代码。如图所示,你需要把以下红框里文件拷贝到你的工程中。
      从上到下分别是:
      • AlivcPlayPublic:播放公共代码。
      • AlivcLongVideo:长视频相关代码。
      • AlivcVideoPlay:视频播放相关代码。
  3. 配置pch文件。
    在你工程的.pch文件中增加以下引用:
    #import "AlivcImage.h"
    #import "AlivcMacro.h"
    如果你的工程中没有.pch文件可以拷贝我们提供的Demo中的PrefixHeader.pch增加到你的工程,.pch文件中保留以上引用,TARGETS->Build Settings进行如图设置。

    Prefix Header中填入已经加到你工程内PrefixHeader.pch的路径$(SRCROOT)/自己的目录文件/PrefixHeader.pch

  4. 工程环境配置。
    info.Plist文件配置:添加App Transport Security Settings,然后在此选项添加子属性Allow Arbitrary Loads为YES,这样就可以进行HTTP请求。
  5. Pod集成。
    你需要在Podfile文件内增加以下引用:
    pod 'MJRefresh', '~> 3.1.15.7'    
    pod 'LBXScan/LBXNative','~> 2.3'    
    pod 'LBXScan/UI','~> 2.3'    
    pod 'MBProgressHUD', '~> 1.1.0'    
    pod 'SDWebImage', '~> 4.0.0'    
    pod 'AFNetworking', '~> 3.0'    
    pod 'FMDB',:git => 'https://github.com/ccgus/fmdb.git',:tag => '2.7'    
    pod 'JSONModel','~> 1.7.0'    
    pod 'MRDLNA',:git => 'https://github.com/MQL9011/MRDLNA.git'    
    pod 'AliPlayerSDK_iOS',:git => 'https://github.com/aliyunvideo/AliPlayerSDK.git',:tag => '4.7.0'

    打开终端cd到你项目的Podfile目录下,执行pod install即可。