Reproduza um vídeo no seu aplicativo Flutter usando o ApsaraVideo Player SDK. Siga estas etapas para crie um player, configure uma visualize de vídeo, defina a source de reprodução e liberar recursos.
Pré-requisitos
Integre o SDK do player para Flutter ao seu projeto. Para obter instruções, consulte Integrar o SDK do player para Flutter.
Procedimento
Etapa 1: Crie um player
FlutterAliplayer fAliplayer = FlutterAliPlayerFactory.createAliPlayer();
fAliplayer.setTraceID("traceId");
O parâmetro setTraceID controla o relatório de logs de instrumentação. Esse recurso habilita o monitoramento da qualidade de reprodução, o rastreamento de ponto único e as estatísticas de reprodução de vídeo.
|
**Valor de |
Relatório de logs de instrumentação |
Recursos disponíveis |
|
Não definido (padrão) |
Ativado |
Monitoramento da qualidade de reprodução, estatísticas de reprodução de vídeo |
|
Um identificador exclusivo, como ID de usuário, IMEI ou IDFA |
Ativado |
Monitoramento da qualidade de reprodução, rastreamento de ponto único, estatísticas de reprodução de vídeo |
|
|
Desativado |
Nenhum |
Para usar o rastreamento de ponto único, forneça um identificador exclusivo para o usuário ou dispositivo, como o ID de usuário da sua aplicação, um International Mobile Equipment Identity (IMEI) ou um identificador para anunciantes (IDFA).
Etapa 2: Configure a visualize de vídeo
Crie um widget AliPlayerView e anexe o player após criar a visualização.
// 1. Create the player view widget
AliPlayerView aliPlayerView = AliPlayerView(
onCreated: onViewPlayerCreated,
x: 0,
y: 0,
width: width,
height: height,
aliPlayerViewType: AliPlayerViewTypeForAndroid.surfaceview);
// 2. Attach the player to the view
void onViewPlayerCreated(viewId) async {
fAliplayer.setPlayerView(viewId);
}
Etapa 3: Defina a source de reprodução
O SDK oferece suporte a três tipos de source de reprodução. Escolha a opção adequada ao seu caso de uso.
VidAuth (recomendado)
Use o VidAuth para reprodução segura com uma credencial de reprodução de curta duração. Chame a operação GetVideoPlayAuth do ApsaraVideo VOD para obter o valor de playAuth.
fAliplayer.setVidAuth(
vid: "<your-video-id>", // Required. The video ID (VideoId).
playAuth: "<your-play-auth>", // Required. The playback credential from GetVideoPlayAuth.
region: "<your-region>", // Required. The region of ApsaraVideo VOD. Default: cn-shanghai.
);
VidSts
Use o VidSts para reprodução com credenciais temporárias do Security Token Service (STS). Chame a operação AssumeRole do STS para obter os valores necessários.
fAliplayer.setVidSts(
vid: "<your-video-id>", // Required. The video ID (VideoId).
accessKeyId: "<your-access-key-id>", // Required. The AccessKey ID from the temporary AccessKey pair.
accessKeySecret: "<your-access-key-secret>", // Required. The AccessKey secret from the temporary AccessKey pair.
securityToken: "<your-security-token>", // Required. The STS token.
region: "<your-region>", // Required. The region of ApsaraVideo VOD. Default: cn-shanghai.
);
UrlSource
Use o UrlSource para reprodução direta baseada em URL.
fAliplayer.setUrl("<your-video-url>");
Para mais detalhes sobre fontes de reprodução, consulte Recursos básicos .
Etapa 4: Iniciar a reprodução
fAliplayer.prepare();
fAliplayer.play();
Etapa 5: Liberar o player
Ao terminar a reprodução, pare o player, libere os recursos e limpe a referência para evitar vazamentos de memória.
fAliplayer.stop();
fAliplayer.release();
fAliplayer = null; // Prevents memory leaks
Sempre chamerelease()e defina o player comonullquando ele não for mais necessário. Caso contrário, ocorrerão vazamentos de memória.
Exemplo completo
O exemplo a seguir combina todas as etapas em um fluxo de reprodução completo.
// Step 1: Create a player
FlutterAliplayer fAliplayer = FlutterAliPlayerFactory.createAliPlayer();
fAliplayer.setTraceID("traceId");
// Step 2: Set up the video view
AliPlayerView aliPlayerView = AliPlayerView(
onCreated: (viewId) async {
fAliplayer.setPlayerView(viewId);
},
x: 0,
y: 0,
width: width,
height: height,
aliPlayerViewType: AliPlayerViewTypeForAndroid.surfaceview);
// Step 3: Set the playback source (VidAuth)
fAliplayer.setVidAuth(
vid: "<your-video-id>",
playAuth: "<your-play-auth>",
region: "<your-region>",
);
// Step 4: Start playback
fAliplayer.prepare();
fAliplayer.play();
// Step 5: Release the player when done
fAliplayer.stop();
fAliplayer.release();
fAliplayer = null;
Referências
Para controle de reprodução, listeners de eventos e outros recursos do player, consulte Recursos básicos.