Ce document explique comment intégrer rapidement AliPlayerKit dans votre projet iOS.
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
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 |
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 |
Optez pour cette solution afin d'implémenter rapidement des scénarios de lecture standard. |
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. |
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.
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
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
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.
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
}[AliPlayerKit setup]utilisedispatch_onceen interne pour garantir l'idempotence. Vous pouvez l'appeler plusieurs fois en toute sécurité ; les appels suivants sont ignorés.Définissez
setOnGlobalInitBlock:avantsetuppour 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 installse 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.
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
-
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.
-
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' -
Exécutez la commande de mise à jour.
pod update AliPlayerSDK_iOS -
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.
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 :
Assurez-vous que l'appel est effectué dans
application:didFinishLaunchingWithOptions:au sein deAppDelegate.Confirmez que la licence est configurée correctement. Pour plus de détails, consultez la rubrique Gérer la licence.
Appelez
[AliPlayerKit isInitialized]pour confirmer que l'initialisation a réussi.La méthode
setupest idempotente (en utilisantdispatch_once). Les appels répétés sont sûrs et ne génèrent pas d'exceptions.Si vous devez injecter des configurations globales du SDK, confirmez que
setOnGlobalInitBlock:est défini avant l'appel desetup.
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.