Tous les produits
Search
Centre de documentation

ApsaraVideo VOD:Démarrage rapide

Dernière mise à jour :Sep 11, 2026

Ce document explique comment intégrer rapidement AliPlayerKit, depuis l'initialisation globale jusqu'à l'intégration des couches composant et scène.

Remarque

Avant de commencer, assurez-vous d'avoir configuré votre environnement et ajouté les dépendances requises comme décrit dans Préparatifs d'intégration.

Remarque

Conseil compatible avec l'IA : ce document est structuré pour faciliter l'analyse par l'IA. Vous pouvez l'utiliser en tant que Skills pour accélérer votre flux de travail de développement.

L'API minimaliste d'AliPlayerKit vous permet d'intégrer rapidement des fonctionnalités de lecture vidéo avec peu de code.

Choisissez une option d'intégration

AliPlayerKit repose sur une architecture en couches, proposant à la fois une intégration au niveau des composants et au niveau des scènes. Choisissez l'option qui correspond le mieux à vos besoins métier :

Option d'intégration

Module

Description

Cas d'utilisation

Intégration de la couche composant

playerkit

Utilise le module central playerkit, qui inclut un composant d'interface utilisateur de lecteur configurable.

Nécessite une interface utilisateur de lecteur personnalisée ou un contrôle flexible du comportement de lecture.

Intégration de la couche scène

playerkit-scenes

Fournit des solutions complètes et préconçues pour les scénarios courants, construites sur la couche composant.

Implémentez rapidement des scénarios de lecture standard, tels que les vidéos longues, les vidéos courtes et la diffusion en direct.

Remarque

La couche scène dépend de la couche composant ; vous devez donc d'abord effectuer l'intégration de la couche composant.

Initialisation globale

Appelez AliPlayerKit.init() dans Application.onCreate() pour l'initialisation globale. Cette méthode ne doit être appelée qu'une seule fois au cours du cycle de vie de l'application afin d'initialiser le cœur du lecteur et les paramètres globaux.

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        // Initialize global settings for AliPlayerKit.
        AliPlayerKit.init(this);
    }
}
class MyApplication : Application() {
    override fun onCreate() {
        super.onCreate()
        // Initialize global settings for AliPlayerKit.
        AliPlayerKit.init(this)
    }
}
Remarque

AliPlayerKit propose d'autres méthodes de configuration globale, telles que setPlayerViewType() et setDisableScreenshot(). Pour plus de détails, consultez la Référence API.

Option 1 : Intégration de la couche composant

La couche composant (le module playerkit) fournit un composant d'interface utilisateur de lecteur configurable prêt à l'emploi. Suivez ces étapes pour implémenter la fonctionnalité de lecture sur chaque page nécessitant la lecture de vidéos.

Étape 1 : Ajoutez la vue du lecteur

Ajoutez AliPlayerView à votre fichier XML de mise en page :

<!-- Player component view -->
<com.aliyun.playerkit.AliPlayerView
    android:id="@+id/player_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />       

Placez AliPlayerView directement dans votre mise en page, en définissant sa largeur et sa hauteur selon vos besoins. Si un conteneur externe est requis (par exemple, pour prendre en charge le basculement en plein écran), vous pouvez l'encapsuler dans un FrameLayout ou un autre conteneur.

Étape 2 : Liez le contrôleur et démarrez la lecture

Important

Si votre application prend en charge le basculement en plein écran, vous devez configurer l'attribut android:configChanges pour l'Activity du lecteur dans votre fichier AndroidManifest.xml. Cela empêche la recréation de l'Activity lors de la rotation de l'écran, ce qui entraînerait sinon la perte de l'état de lecture.

<application>
    <activity
        android:name=".VideoPlayerActivity"
        android:configChanges="orientation|screenSize"
        ...>
    </activity>
</application>

Après cette configuration, la rotation de l'écran ne déclenchera pas la recréation de l'Activity, préservant ainsi l'état du lecteur.

Dans votre Activity ou Fragment, créez le contrôleur, configurez les données et liez-le à la vue :

public class VideoPlayerActivity extends AppCompatActivity {

    private AliPlayerView playerView;
    private AliPlayerController controller;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_video_player);

        // 1. Get the player view.
        playerView = findViewById(R.id.player_view);

        // 2. Create the player controller.
        controller = new AliPlayerController(this);

        // 3. Configure playback data (VidAuth is recommended).
        AliPlayerModel model = new AliPlayerModel.Builder()
                .videoSource(VideoSourceFactory.createVidAuthSource(
                        "your_video_id",    // Video ID
                        "your_playback_credential"    // Playback credential
                ))
                .coverUrl("https://example.com/cover.jpg")  // Replace with your actual cover image URL.
                .videoTitle("Sample Video")
                .autoPlay(true)
                .build();

        // 4. Bind the controller to the view.
        playerView.attach(controller, model);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        // 5. Detach and release resources.
        playerView.detach();
    }
}
class VideoPlayerActivity : AppCompatActivity() {

    private lateinit var playerView: AliPlayerView
    private lateinit var controller: AliPlayerController

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_video_player)

        // 1. Get the player view.
        playerView = findViewById(R.id.player_view)

        // 2. Create the player controller.
        controller = AliPlayerController(this)

        // 3. Configure playback data (VidAuth is recommended).
        val model = AliPlayerModel.Builder()
                .videoSource(VideoSourceFactory.createVidAuthSource(
                        "your_video_id",    // Video ID
                        "your_playback_credential"    // Playback credential
                ))
                .coverUrl("https://example.com/cover.jpg")  // Replace with your actual cover image URL.
                .videoTitle("Sample Video")
                .autoPlay(true)
                .build()

        // 4. Bind the controller to the view.
        playerView.attach(controller, model)
    }

    override fun onDestroy() {
        super.onDestroy()
        // 5. Detach and release resources.
        playerView.detach()
    }
}
Remarque

Si vous ne disposez pas encore d'ID vidéo ni d'identifiants de lecture, vous pouvez utiliser les exemples de données fournis dans SceneConstants.java pour exécuter rapidement l'exemple à des fins de test.

Étape 3 (Facultative) : Gérez le bouton Retour

Si votre application prend en charge la lecture en plein écran, vous devez gérer l'événement du bouton Retour dans votre Activity :

@Override
public void onBackPressed() {
    // If in full screen mode, exit full screen.
    if (playerView.onBackPressed()) {
        return;  // Event handled, do not perform the default action.
    }
    super.onBackPressed();  // Event not handled, perform the default action.
}
@Deprecated("Deprecated in Java")
override fun onBackPressed() {
    // If in full screen mode, exit full screen.
    if (playerView.onBackPressed()) {
        return  // Event handled, do not perform the default action.
    }
    super.onBackPressed()  // Event not handled, perform the default action.
}
Remarque

Pour obtenir des descriptions complètes de l'API de chaque composant, consultez la Référence API. Pour le flux d'appel de l'API principale, reportez-vous aux Fonctionnalités principales.

Option 2 : Intégration de la couche scène

La couche scène fournit des solutions de lecture complètes pour des scénarios métier spécifiques, tels que les vidéos longues, les vidéos courtes et la diffusion en direct. La couche scène est construite sur la couche composant et est prête à l'emploi, sans nécessiter de développement supplémentaire.

Étape 1 : Choisissez un module de scène

Les modules de scène se trouvent dans le répertoire playerkit-scenes. Les modules disponibles incluent :

Module de scène

Description

scene-common

Module de scène commun (requis). Les autres modules de scène en dépendent.

scene-longvideo

Fournit une solution complète pour la lecture de vidéos longues.

scene-shortvideo

Fournit une solution complète pour la lecture de vidéos courtes avec défilement.

scene-live

Fournit une solution complète pour la lecture de diffusions en direct.

scene-playlist

Fournit une solution complète pour la lecture de listes de lecture.

Étape 2 : Lancez la page de scène

Après avoir intégré un module de scène, vous pouvez lancer la page de scène de l'une des deux manières suivantes :

Méthode 1 : Navigation par Intent

// Navigate to the long-form video scenario.
Intent intent = new Intent(this, LongVideoActivity.class);
startActivity(intent);
// Navigate to the long-form video scenario.
val intent = Intent(this, LongVideoActivity::class.java)
startActivity(intent)

Méthode 2 : Navigation par schéma

Les modules de scène prennent en charge la navigation par schéma pour démarrer un scénario de lecture spécifique. Le schéma de chaque scénario est défini dans le fichier AndroidManifest.xml du module correspondant. Vous trouverez l'URL de schéma spécifique dans la balise <data> du filtre <intent-filter>.

Par exemple, si la configuration dans AndroidManifest.xml est la suivante :

<data
    android:host="scenes"
    android:path="/longvideo"
    android:scheme="playerkit" />   

Construisez l'URL du schéma comme suit :

playerkit://scenes/longvideo          
// Navigate to the target scenario (replace with the actual schema URL).
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("your_schema_url_here"));
startActivity(intent);
// Navigate to the target scenario (replace with the actual schema URL).
val intent = Intent(Intent.ACTION_VIEW).apply {
    data = Uri.parse("your_schema_url_here")
}
startActivity(intent)

Exemples et extensions

Vous avez désormais terminé l'intégration de base d'AliPlayerKit et implémenté la lecture vidéo.

Pour plus d'exemples, reportez-vous aux répertoires suivants :

  • playerkit-examples : Fournit des exemples d'utilisation pour les API courantes.

  • playerkit-scenes : Fournit des solutions pour les scénarios de lecture typiques.