Tous les produits
Search
Centre de documentation

ApsaraVideo VOD:Préparation à l'intégration

Dernière mise à jour :Sep 11, 2026

Ce document explique comment intégrer rapidement AliPlayerKit dans votre projet iOS.

Remarque

Conseil pour l'IA : ce document structuré présente des étapes claires, ce qui le rend idéal pour l'analyse et l'exécution par une IA. Utilisez-le comme Skill pour optimiser votre flux de travail de développement. Nous vous recommandons de recourir à l'assistance IA pour intégrer AliPlayerKit.

Vue d'ensemble de l'intégration

Important

Assurez-vous d'avoir consulté le dépôt AliPlayerKit et téléchargé le projet.

AliPlayerKit propose deux options d'intégration. Choisissez celle qui correspond le mieux à vos besoins métier :

Option d'intégration

Description

Cas d'utilisation

Intégration au niveau des composants

Intégrez le module central PlayerKit.

Privilégiez cette option si vous avez besoin d'une interface utilisateur de lecteur personnalisée ou d'un contrôle plus flexible du comportement de lecture.

Intégration au niveau des scènes

Intégrez le module de scène PlayerKitScenes en plus du niveau des composants.

Optez pour cette solution afin d'implémenter rapidement des scénarios de lecture standard.

Remarque

L'intégration au niveau des scènes s'appuie sur l'intégration au niveau des composants. Vous devez donc d'abord réaliser l'intégration au niveau des composants.

Prérequis

Environnement de développement

Élément

Configuration minimale requise

Description

Cible de déploiement iOS

9,0+

Version minimale déclarée dans le Podspec.

Xcode

15,0+

Nous recommandons la dernière version stable.

CocoaPods

1.13.0+

Outil de gestion des dépendances.

Langage de développement

Objective-C

Les projets Swift peuvent l'appeler via un en-tête de pontage.

Architecture

arm64

Pour exécuter l'application sur un appareil physique.

Remarque

Pour les projets Swift, suivez le guide Swift-Call-OC-Example afin d'intégrer et d'utiliser PlayerKit.

Licence

Vous devez disposer d'un certificat de licence de lecteur et d'une clé de licence pour le SDK ApsaraVideo Player. Pour plus de détails, consultez la rubrique Gérer la licence.

Important

Une configuration incorrecte de la licence empêche le bon fonctionnement du lecteur et peut provoquer un écran noir pendant la lecture.

Option 1 : Intégration au niveau des composants

Le module central PlayerKit fournit un composant d'interface utilisateur de lecteur configurable et prêt à l'emploi, couvrant la lecture de base et les fonctionnalités interactives courantes.

Étape 1 : Copier le module dans votre projet

Copiez le répertoire PlayerKit/ dans le répertoire de votre projet (au même niveau que votre Podfile ou dans un sous-répertoire approprié) :

YourProject/
├── YourApp/
├── PlayerKit/                  # ← Copy this directory
│   ├── PlayerKit.podspec
│   ├── Source/
│   └── Resources/
└── Podfile

Étape 2 : Configurer le Podfile

Dans votre Podfile, référencez PlayerKit en utilisant son chemin local :

platform :ios, '11.0'

target 'YourApp' do
  use_frameworks!

  # Core component (required, referenced by local path)
  pod 'PlayerKit', :path => './PlayerKit'

  # Underlying player SDK (required)
  pod 'AliPlayerSDK_iOS', '~> 7.15.0'

  # RTS for ultra-low latency live streaming (optional, for live streaming scenarios only)
  # pod 'AliPlayerSDK_iOS_ARTC', '~> 7.15.0'
  # pod 'RtsSDK', '~> 7.12.0'
end
Remarque

PlayerKit.podspec déclare des dépendances envers AliPlayerSDK_iOS et SDWebImage, qui sont automatiquement installées lorsque vous exécutez pod install. AliPlayerSDK_iOS fournit les capacités de décodage et de rendu vidéo. SDWebImage sert à charger l'image de couverture. Si votre projet utilise déjà SDWebImage, vérifiez la compatibilité des versions.

Étape 3 : Installer les dépendances

pod install
open YourApp.xcworkspace
Remarque

Après avoir utilisé CocoaPods, ouvrez votre projet avec .xcworkspace, et non avec .xcodeproj.

Étape 4 : Configurer la licence

Le SDK de lecteur nécessite une licence valide pour fonctionner. Consultez la rubrique Gérer la licence pour obtenir et configurer votre licence.

Remarque

Assurez-vous que la licence est enregistrée avant d'appeler [AliPlayerKit setup].

Étape 5 : Initialisation globale

N'appelez cette méthode qu'une seule fois au cours du cycle de vie de l'application :

#import <AliPlayerKit/AliPlayerKit.h>

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // (Optional) Global SDK configuration, such as setOption
    // [AliPlayerKit setOnGlobalInitBlock:^{
    //  Global configuration is executed only once after setup
    // }];

    // Initialize AliPlayerKit
    [AliPlayerKit setup];
    return YES;
}
import AliPlayerKit

func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
    // (Optional) Global SDK configuration
    // AliPlayerKit.setOnGlobalInitBlock {
    //  Global configuration is executed only once after setup
    // }

    // Initialize AliPlayerKit
    AliPlayerKit.setup()
    return true
}
Remarque
  • [AliPlayerKit setup] utilise dispatch_once en interne pour garantir l'idempotence. Vous pouvez l'appeler plusieurs fois en toute sécurité ; les appels suivants sont ignorés.

  • Définissez setOnGlobalInitBlock: avant setup pour appliquer les paramètres globaux du SDK.

  • Vérifiez l'état de l'initialisation en appelant [AliPlayerKit isInitialized].

Étape 6 : Vérifier l'intégration

Utilisez la liste de contrôle suivante pour vérifier l'intégration :

  • pod install se termine avec succès sans conflits de dépendances.

  • La licence est configurée correctement.

  • [AliPlayerKit setup] est appelé dans AppDelegate.

  • Le projet se compile avec succès (Cmd + B) sans erreurs de l'éditeur de liens.

Option 2 : Intégration au niveau des scènes

Le niveau des scènes (PlayerKitScenes) s'appuie sur le niveau des composants pour fournir des solutions de lecture standard adaptées à des scénarios métier spécifiques. Chaque module de scène est indépendant et peut être importé selon les besoins.

Important

Avant d'intégrer le niveau des scènes, effectuez toutes les étapes de l'Option 1 : Intégration au niveau des composants.

Étape 1 : Copier le module dans votre projet

Copiez le répertoire PlayerKitScenes/ dans votre projet, au même niveau que PlayerKit/ :

YourProject/
├── YourApp/
├── PlayerKit/                  # Component level (already copied)
├── PlayerKitScenes/            # ← Copy this directory
│   ├── PlayerKitScenes.podspec
│   ├── SceneCommon/
│   ├── SceneLongVideo/
│   ├── SceneShortVideo/
│   ├── SceneLive/
│   └── ScenePlaylist/
└── Podfile

Étape 2 : Configurer le Podfile

Dans votre Podfile, référencez PlayerKitScenes en utilisant son chemin local :

target 'YourApp' do
  use_frameworks!

  # Core component (required)
  pod 'PlayerKit', :path => './PlayerKit'
  pod 'AliPlayerSDK_iOS', '~> 7.15.0'

  # Playback scene solutions (import as needed)
  pod 'PlayerKitScenes', :path => './PlayerKitScenes'

  # Or, select individual scenes as needed:
  # pod 'PlayerKitScenes/SceneLongVideo', :path => './PlayerKitScenes'
  # pod 'PlayerKitScenes/SceneShortVideo', :path => './PlayerKitScenes'
  # pod 'PlayerKitScenes/SceneLive', :path => './PlayerKitScenes'
  # pod 'PlayerKitScenes/ScenePlaylist', :path => './PlayerKitScenes'
end

Descriptions des modules de scène :

Module de scène

Sous-spécification Pod

Description

SceneCommon

PlayerKitScenes/SceneCommon

Module commun aux scènes. Il est automatiquement inclus en tant que dépendance de base.

SceneLongVideo

PlayerKitScenes/SceneLongVideo

Pour les scénarios de vidéos de format moyen et long.

SceneShortVideo

PlayerKitScenes/SceneShortVideo

Pour les scénarios de vidéos courtes.

SceneLive

PlayerKitScenes/SceneLive

Pour les scénarios de streaming en direct.

ScenePlaylist

PlayerKitScenes/ScenePlaylist

Pour les scénarios de lecture de listes de lecture.

Étape 3 : Installer et vérifier

pod install

Si votre projet se compile avec succès, l'intégration au niveau des scènes est terminée.

Mise à niveau du SDK

AliPlayerKit dépend des SDK sous-jacents suivants :

SDK

Description

AliPlayerSDK_iOS

SDK Alibaba Cloud Player, qui fournit les capacités de lecture principales telles que le décodage vidéo, le rendu et le contrôle de la lecture.

RtsSDK

SDK Alibaba Cloud RTS, qui permet la lecture de streaming en direct à ultra-faible latence (facultatif).

Informations sur la version

  • Au moment de l'exécution, appelez [AliPlayerKit getSdkVersion] pour obtenir le numéro de version du SDK sous-jacent.

  • Appelez [AliPlayerKit getPlayerKitVersion] pour obtenir le numéro de version du composant AliPlayerKit.

  • Consultez les rubriques Télécharger le SDK Player et Historique des versions du SDK iOS.

Étapes de mise à niveau

  1. Confirmez la compatibilité des versions.

    Avant la mise à niveau, examinez l'historique des versions du SDK et le journal des modifications pour vérifier si la version cible contient des changements incompatibles.

  2. Modifiez le numéro de version dans votre Podfile.

    pod 'AliPlayerSDK_iOS', '~> x.x.x'  # Replace with the target version
    
    # RTS (if you use live streaming scenarios)
    # pod 'AliPlayerSDK_iOS_ARTC', '~> x.x.x'
    # pod 'RtsSDK', '~> x.x.x'
  3. Exécutez la commande de mise à jour.

    pod update AliPlayerSDK_iOS
  4. Vérifiez la mise à niveau.

    • Le projet se compile avec succès sans erreurs de l'éditeur de liens.

    • Vérifiez les fonctions de lecture principales : lecture, pause, recherche, vitesse de lecture, etc.

    • Vérifiez les scénarios de lecture spécifiques, tels que le streaming en direct à ultra-faible latence avec RTS.

Remarque

Après une mise à niveau, nous vous recommandons d'enregistrer les numéros de version avant et après l'opération. Cela facilite le dépannage futur et le suivi des versions.

FAQ

Problèmes de licence

Problème : Le lecteur signale une erreur de licence ou affiche un écran noir.

Les causes courantes incluent un fichier de certificat ajouté incorrectement, une clé de licence non correspondante, un ID de bundle incohérent avec celui lié à la licence ou une licence expirée. Pour plus de détails, consultez la rubrique Gérer la licence.

Conflits de dépendances

Problème : pod install échoue avec un conflit de dépendances.

Étapes de dépannage : ce conflit peut survenir si votre projet et PlayerKit dépendent de versions différentes de SDWebImage. Essayez d'exécuter pod update pour résoudre le conflit. Si le problème persiste, exécutez pod repo update pour actualiser l'index de votre référentiel local avant de réessayer.

Problèmes d'initialisation

Problème : La lecture ne fonctionne pas correctement après avoir appelé [AliPlayerKit setup].

Étapes de dépannage :

  1. Assurez-vous que l'appel est effectué dans application:didFinishLaunchingWithOptions: au sein de AppDelegate.

  2. Confirmez que la licence est configurée correctement. Pour plus de détails, consultez la rubrique Gérer la licence.

  3. Appelez [AliPlayerKit isInitialized] pour confirmer que l'initialisation a réussi.

  4. La méthode setup est idempotente (en utilisant dispatch_once). Les appels répétés sont sûrs et ne génèrent pas d'exceptions.

  5. Si vous devez injecter des configurations globales du SDK, confirmez que setOnGlobalInitBlock: est défini avant l'appel de setup.

Débogage avec les journaux

Si vous rencontrez des problèmes de lecture, activez les journaux de débogage pour faciliter le dépannage :

// Enable debug mode
[AliPlayerKit setDebugModeEnabled:YES];
// Set the log level to Verbose for the most detailed output
[AliPlayerKit setLogLevel:LogLevelVerbose];

Pour plus de détails sur l'utilisation du système de journalisation, consultez la rubrique Système de journalisation.