Todos os produtos
Search
Central de documentação

ApsaraVideo VOD:Preparação para integração

Última atualização: Sep 10, 2026

Este tópico descreve as etapas e os pré-requisitos para integrar o AliPlayerKit ao seu projeto.

Nota

Este documento apresenta etapas claras para análise e execução por IA. Use-o como uma Skill para auxiliar seu fluxo de trabalho de desenvolvimento. Recomendamos usar IA para ajudar na integração do AliPlayerKit.

Visão geral da integração

Importante

Certifique-se de ter baixado o projeto do repositório AliPlayerKit.

O AliPlayerKit oferece duas opções de integração. Escolha a que melhor atende às suas necessidades de negócios. Em breve, lançaremos Skills dedicadas para melhorar o suporte à integração:

Solução de integração

Descrição

Caso de uso

Integração no nível de componente

Integre o módulo principal playerkit.

Ideal para personalizar a interface do player ou controlar o comportamento de reprodução com flexibilidade.

Integração no nível de cenário

Integre módulos de cenário sobre a camada de componentes.

Indicada para implementar rapidamente cenários de reprodução padrão.

Nota

A camada de cenário depende da camada de componente. Se optar pela integração no nível de cenário, conclua primeiro a integração no nível de componente.

Pré-requisitos

Configure seu ambiente de desenvolvimento

Antes de usar o AliPlayerKit, verifique se seu ambiente de desenvolvimento atende aos seguintes requisitos:

  • JDK 11

    • Configure o JDK em Preferences → Build, Execution, Deployment → Build Tools → Gradle → Gradle JDK.

    • Selecione a versão 11. Caso a versão 11 não esteja disponível, atualize o Android Studio.

  • Ambiente de desenvolvimento Android

    • Instale a versão mais recente do Android Studio.

    • Configure o Android SDK. O nível mínimo de API compatível é 21 (Android 5.0).

    • Recomendamos usar compileSdkVersion 31 ou superior.

    • Use Gradle versão 7,0 ou superior.

Prepare sua licença

Obtenha o certificado e a chave de licença do player para o ApsaraVideo Player SDK. Para mais informações, consulte Gerencie Licenças.

Importante

Sem a configuração correta da licença, o player não funcionará e poderá gerar uma exceção de autorização.

Opção 1: Integração no nível de componente

O módulo principal playerkit fornece um componente de interface do player pronto para uso e configurável. Ele oferece suporte a reprodução básica e interações comuns.

Etapa 1: Copie o módulo de componente

Copie o diretório do módulo principal playerkit (biblioteca) para o seu projeto:

# Copy the playerkit core module to your project root directory
# Note: Copy only the playerkit directory—not the entire project or example modules such as playerkit-examples or playerkit-scenes
cp -r playerkit /path/to/your/project/

Etapa 2: Configure seu projeto Gradle

Configure o repositório Maven

Adicione o repositório Maven do Alibaba Cloud ao seu projeto:

repositories {
    // aliyun maven
    maven { url "https://maven.aliyun.com/repository/releases" }
}
repositories {
    // aliyun maven
    maven("https://maven.aliyun.com/repository/releases")
}

Adicione a referência do módulo

include ':playerkit'
include(":playerkit")

Adicione a dependência do módulo

dependencies {
    // AliPlayerKit core module: Provides an out-of-the-box, configurable player UI component. Supports basic playback and common interactions.
    implementation project(':playerkit')
}
dependencies {
    // AliPlayerKit core module: Provides an out-of-the-box, configurable player UI component. Supports basic playback and common interactions.
    implementation(project(":playerkit"))
}

Etapa 3: Configure sua licença

Adicione o arquivo de certificado de licença

Coloque o arquivo de certificado de licença no diretório src/main/assets/cert/ do módulo do seu aplicativo.

Adicione a configuração de licença

Adicione a seguinte configuração ao arquivo AndroidManifest.xml do módulo do seu aplicativo:

<meta-data
    android:name="com.aliyun.alivc_license.licensekey"
    android:value="Your License Key" />
<meta-data
    android:name="com.aliyun.alivc_license.licensefile"
    android:value="assets/cert/license.crt" />          
Nota
  • Verifique se o elemento <meta-data> está dentro do elemento <application> e se o atributo name está correto.

  • Se o service do ApsaraVideo Player SDK estiver implantado fora da China, consulte Integrate Licenses on Android para obter instruções de configuração.

  • Para um exemplo completo de configuração, consulte o módulo demo-app.

Etapa 4: Verifique a integração

Sincronize e compile seu projeto

Sincronize o Gradle e compile o projeto para confirmar se as dependências e configurações do módulo estão corretas:

./gradlew clean assemble --stacktrace --info

Se a compilação for bem-sucedida e nenhum erro de dependência aparecer, o módulo playerkit estará referenciado corretamente.

Registre a versão da integração (Recomendado)

Após concluir a integração e obter uma compilação bem-sucedida, execute git commit para registrar o ID do commit atual do código-fonte do componente. Esse registro serve como linha de base para a versão da integração. Ajuda a rastrear futuras atualizações ou alterações no source. Também auxilia no controle de qualidade durante a integração e acelera a solução de problemas ou o suporte técnico. Por exemplo:

git add .
git commit -m "feat: integrate AliPlayerKit module (source commit: 2c30d92)"            

Opção 2: Integração no nível de cenário

A camada de cenário fornece exemplos de reprodução para casos de negócios específicos, como vídeo longo, vídeo curto, transmissão ao vivo e reprodução em lista. Cada módulo de cenário é um exemplo independente. Escolha os módulos correspondentes às suas necessidades de negócios e integre-os diretamente.

Nota

Pré-requisito: A camada de cenário depende da camada de componente. Conclua a integração no nível de componente antes de iniciar a integração no nível de cenário.

Etapa 1: Copie os módulos de cenário

Copie os módulos de cenário necessários para o seu projeto conforme suas necessidades de negócios:

Módulo

Descrição

scene-common

Módulo de cenário comum. Inclui constantes de vídeo de exemplo. Ignore esta etapa se implementar sua própria fonte de vídeo.

scene-longvideo

Exemplo de cenário de vídeo longo.

scene-shortvideo

Exemplo de cenário de vídeo curto.

scene-live

Exemplo de cenário de transmissão ao vivo.

scene-playlist

Exemplo de cenário de reprodução em lista.

# scene-common includes sample video constants. Skip it if you implement your own video source.
cp -r playerkit-scenes/scene-common /path/to/your/project/

# Choose other scenario modules as needed.
cp -r playerkit-scenes/scene-longvideo /path/to/your/project/
cp -r playerkit-scenes/scene-live /path/to/your/project/
# ...         
Importante
  • Não copie o módulo demo-settings. Ele serve apenas para fins de demonstração e fornece recursos como configuração de código QR e armazenamento de links de reprodução.

  • O módulo scene-common fornece constantes de vídeo de exemplo. Ignore este módulo se já tiver implementado sua própria lógica de fonte de vídeo.

Etapa 2 (Opcional): Resolva as dependências do módulo

Os arquivos build.gradle dos módulos de cenário dependem de demo-settings e scene-common. Ajuste essas dependências conforme suas necessidades:

Módulo

Dependência

Ação durante a integração

scene-longvideo

demo-settings, scene-common

Remova demo-settings. Mantenha scene-common apenas se necessário.

scene-live

demo-settings, scene-common

Remova demo-settings. Mantenha scene-common apenas se necessário.

scene-shortvideo

scene-common

Mantenha scene-common apenas se necessário.

scene-playlist

scene-common

Mantenha scene-common apenas se necessário.

Remova a dependência demo-settings

Os módulos scene-longvideo e scene-live referenciam demo-settings em seus arquivos build.gradle. Remova essas referências:

dependencies {
    // ...
    // Delete this line: demo-settings is used only for demos.
    // implementation project(':demo-settings')
}          

Gerencie a dependência scene-common

O módulo scene-common fornece constantes de vídeo de exemplo, como SceneConstants. Você pode optar por:

  • Manter a dependência: Use os vídeos de exemplo para testes.

  • Remover a dependência: Se implementar sua própria fonte de vídeo, exclua a dependência do arquivo build.gradle.

dependencies {
    // ...
    // Comment out or delete this line if you implement your own video source.
    // implementation project(':scene-common')
}          

Substitua o código-fonte do vídeo

Após remover a dependência demo-settings ou scene-common, atualize a lógica de fonte de vídeo na sua Activity:

Lógica original de fonte de vídeo:

// ===== Original code (uses demo-settings / scene-common)=====
import com.aliyun.playerkit.example.settings.link.LinkConstants;
import com.aliyun.playerkit.example.settings.storage.SPManager;
import com.aliyun.playerkit.scenes.common.SceneConstants;

private String getVideoVid() {
    String savedVid = SPManager.getInstance().getString(LinkConstants.KEY_VIDEO_VID);
    return StringUtil.isNotEmpty(savedVid) ? savedVid : SceneConstants.LANDSCAPE_SAMPLE_VID;
}

Lógica atualizada de fonte de vídeo:

// ===== Updated (use your video source)=====
private String getVideoVid() {
    return "Your video Vid";  // Or fetch it from your business API.
}

private String getVideoPlayAuth() {
    return "Your PlayAuth";  // Or fetch it from your business API.
}           

Etapa 3: Configure seu projeto Gradle

Adicione referências de módulo

include ':scene-common'
include ':scene-longvideo'
// Add other scenario modules as needed...
include(":scene-common")
include(":scene-longvideo")
// Add other scenario modules as needed...

Adicione dependências de módulo

dependencies {
    // AliPlayerKit scenario modules: Built on the AliPlayerKit core component. Provide out-of-the-box standard playback solutions.
    // Long-form video scenario module: Provides a complete solution for long-form video playback.
    implementation project(':scene-longvideo')
}
dependencies {
    // AliPlayerKit scenario modules: Built on the AliPlayerKit core component. Provide out-of-the-box standard playback solutions.
    // Long-form video scenario module: Provides a complete solution for long-form video playback.
    implementation(project(":scene-longvideo"))
}

Etapa 4: Verifique a integração

Sincronize o Gradle e compile o projeto para confirmar se as dependências e configurações do módulo estão corretas:

./gradlew clean assemble --stacktrace --info       
Nota

Após integrar os módulos de cenário, execute git commit para registrar o ID do commit. Isso facilita o rastreamento futuro.

(Opcional) Guia de atualização do SDK

O AliPlayerKit depende dos seguintes SDKs:

SDK

Descrição

AliPlayer SDK

ApsaraVideo Player SDK. Fornece capacidades essenciais de reprodução, como decodificação de vídeo, renderização e controle de reprodução.

RtsSDK

Alibaba Cloud RTS SDK. Permite reprodução ao vivo de Real-Time Streaming (RTS) com latência ultrabaixa, na ordem de milissegundos.

Para atualizar as versões subjacentes do SDK, siga estas etapas.

Visualize as informações de versão

As versões atuais do SDK das quais o AliPlayerKit depende estão definidas no arquivo playerkit/build.gradle.

Consulte as versões mais recentes e a documentação dos SDKs relacionados nestes links:

Etapas de atualização

  1. Verifique a compatibilidade de versões

    Antes de atualizar, revise o histórico de lançamentos e o log de atualizações do SDK. Verifique se a versão alvo introduz alterações disruptivas ou outros ajustes de compatibilidade.

  2. Atualize o número da versão

    No arquivo playerkit/build.gradle, atualize os números de versão do SDK:

    def player_sdk_version = "x.x.x"  // Replace with your target version
    api "com.aliyun.sdk.android:AliyunPlayer:$player_sdk_version-full"
    
    // RtsSDK version must match the player SDK version.
    def rts_sdk_version = "x.x.x"  // Replace with your target version
    api "com.aliyun.rts.android:RtsSDK:$rts_sdk_version"            
  3. Verifique a atualização:

    • Limpe e recompile seu projeto:

      ./gradlew clean assemble --stacktrace --info                
    • Teste as funções principais de reprodução: play, pause, seek e velocidade de reprodução.

    • Teste cenários específicos de reprodução, como a transmissão ao vivo de Real-Time Streaming (RTS) com latência ultrabaixa.

Nota

Após atualizar o SDK, registre os números das versões antiga e nova. Isso auxilia na solução de problemas e no rastreamento de versões.

Perguntas frequentes

Problemas de licença

Problema: O player exibe um erro de licença.

Solução:

  1. Confirme se o certificado de licença e a chave foram configurados corretamente.

  2. Verifique se a licença expirou.

  3. Certifique-se de que o nome do pacote do aplicativo corresponde ao nome do pacote vinculado à licença.

  4. Sem a configuração correta da licença, a reprodução falhará após a integração. Pode ocorrer tela preta ou outro comportamento anormal.

Conflitos de dependência

Problema: A sincronização do Gradle falha com um erro de conflito de dependência.

Solução:

  1. Verifique se o projeto já contém versões diferentes da mesma dependência.

  2. Use exclude para remover dependências conflitantes.

  3. Padronize as versões das dependências em todo o projeto.

  4. Caso o projeto já use a mesma biblioteca de terceiros, ajuste o número da versão no módulo playerkit para garantir compatibilidade e evitar conflitos.

Falha na inicialização

Problema: A chamada de AliPlayerKit.init() gera uma exceção.

Solução:

  1. Confirme se o Context não é nulo.

  2. Chame o método em Application.onCreate().

  3. Verifique se há chamadas duplicadas. Chamadas duplicadas são ignoradas e não geram exceções.

Problemas de configuração de versão do SDK

Problema: A compilação falha com um erro de incompatibilidade de versão do SDK.

Solução:

Garanta que as configurações do módulo playerkit, como compileSdkVersion, buildToolsVersion, minSdkVersion e targetSdkVersion, correspondam às definições do seu projeto.

Problemas de namespace

Problema: Após copiar os módulos, a compilação falha com erros relacionados ao namespace.

Solução:

O arquivo build.gradle de cada módulo declara um namespace por padrão para oferecer suporte ao Android Gradle Plugin (AGP) 7.x e superior. Ajuste essa configuração conforme a versão do seu AGP:

Versão do AGP

Requisito de configuração

≥ 8.0 (por exemplo, 8.3.2)

Mantenha a declaração de namespace no build.gradle.

7.x (por exemplo, 7.4.2)

A declaração de namespace é opcional. Recomendamos mantê-la para facilitar futuras atualizações.

< 7.0 (por exemplo, 4.0.1)

Comente ou exclua a declaração de namespace no build.gradle. Use o atributo package no AndroidManifest.xml em vez disso.

Local da configuração: Dentro do bloco android {} no arquivo build.gradle de cada módulo.

android {
    /// Integration FAQ
    /// Notes about namespace declaration:
    /// - AGP version ≥ 8.0 (for example, 8.3.2): namespace must be declared.
    /// - AGP version < 7.0 (for example, 4.0.1): remove namespace declaration. Use the package attribute in AndroidManifest.xml.
    /// - AGP version 7.x: namespace declaration is optional. We recommend declaring it to support future upgrades.
    namespace = "com.aliyun.playerkit"
    // ...
}  

Emulador não suportado

Problema: Ocorre um erro ao executar em um emulador.

Solução:

O ApsaraVideo Player SDK não suporta emuladores. Teste em um dispositivo físico após a integração.

Conflito de prioridade de repositório

Problema: O Gradle relata um conflito ao resolver prioridades de repositório.

Solução:

Para resolver isso, declare os repositórios no seu arquivo settings.gradle.