Todos os produtos
Search
Central de documentação

ApsaraVideo Live:Compilar o demo

Última atualização: Jun 30, 2026

O Flutter Push SDK é uma ferramenta de ingestão de fluxo baseada na camada nativa dos Push SDKs para Android e iOS. Este tópico descreve como compilar o demo.

Baixe o demo

Para obter o código-fonte mais recente do demo e o pacote de instalação, consulte Download do SDK.

Compilar o demo

Requisitos de ambiente

Categoria

Requisito

Versão do Flutter

Versão 2.5.0 ou posterior, mas anterior à 3.0.0. Recomendamos a versão 2.8.0.

Versão do Dart

Versão 2.12.0 ou posterior, mas anterior à 3.0.0.

Versão do sistema

  • Android 5.0 ou superior.

  • iOS 10.0 ou superior.

Arquitetura de CPU

armeabi-v7a ou arm64-v8a.

Ferramentas de desenvolvimento

Use o Android Studio ou o Visual Studio Code.

Compilação

Método via IDE

Android Studio

  1. Abra o projeto:

    Inicie o Android Studio, clique em Open, selecione o projeto flutter_livepush_plugin e abra a pasta example.

  2. Instale as dependências:

    No Android Studio, abra o arquivo pubspec.yaml e clique no botão Pub Get no canto superior direito para instalar as dependências.

  3. Configure um dispositivo:

    Certifique-se de que um dispositivo físico Android esteja conectado.

  4. Execute o aplicativo:

    Clique no botão verde de execução (Run) na barra de ferramentas e selecione o dispositivo de destino para iniciar o aplicativo.

Visual Studio Code

  1. Abra o projeto:

    Inicie o Visual Studio Code. Escolha File -> Open Folder, selecione o projeto flutter_livepush_plugin e abra a pasta example.

  2. Instale as dependências:

    Nesta pasta, abra uma linha de comando e execute o comando a seguir para instalar as dependências.

    flutter pub get
  3. Configure um dispositivo:

    Verifique se um dispositivo físico Android ou iOS está conectado. Use o seletor de dispositivos no canto inferior esquerdo do VS Code para escolher o dispositivo de destino.

  4. Execute o aplicativo:

    Pressione F5 ou clique no ícone Run and Debug na barra de atividades à esquerda, selecione a configuração Flutter e inicie uma sessão de depuração.

Xcode (iOS)

  1. Abra o projeto:

    Selecione o projeto flutter_livepush_plugin e abra a pasta ios dentro do diretório example.

  2. Instale as dependências do CocoaPods:

    Na pasta ios dentro do diretório example, abra uma linha de comando e execute o seguinte comando.

    pod install
  3. Configure a assinatura:

    No Xcode, selecione o projeto Runner, acesse a aba Signing & Capabilities e configure uma conta de desenvolvedor válida e um certificado de assinatura.

  4. Execute o aplicativo:

    Clique no botão de execução (▶️) na barra de ferramentas do Xcode e selecione o dispositivo de destino para iniciar o aplicativo.

Método via linha de comando

Acesse o diretório example (flutter_livepush_plugin > example) e abra uma linha de comando.

  1. Instale as dependências.

    flutter pub get
  2. Compile o projeto.

    Android

    Importante

    Antes de compilar o projeto Android, certifique-se de ter instalado o Android SDK e o Gradle.

    • Execute o aplicativo:

      Execute os comandos a seguir para iniciar o aplicativo.

      # Run the debug build
      flutter run --debug
      # Run the release build
      flutter run --release
    • Gere um arquivo APK:

      Execute o comando a seguir para gerar um arquivo APK.

      flutter build apk
      Nota

      O arquivo APK está localizado em build/app/outputs/flutter-apk/app-release.apk.

    iOS

    Importante

    Antes de compilar o projeto iOS, certifique-se de ter instalado o Xcode e o CocoaPods.

    Primeiro, inicialize as dependências do CocoaPods:

    cd ios && pod install && cd ..
    • Execute o aplicativo:

      Execute os comandos a seguir para iniciar o aplicativo.

      # Run the debug build
      flutter run --debug
      # Run the release build
      flutter run --release
    • Gere um arquivo IPA:

      Execute o comando a seguir para gerar um arquivo IPA.

      flutter build ipa
      Nota

      O arquivo IPA está localizado em build/ios/ipa/Runner.ipa.

Perguntas frequentes

Problema de compilação: falha no pod install no iOS

Ao usar a versão 3.0 ou posterior do Dart, a execução do pod install no iOS gera o seguinte erro:

[!] CocoaPods could not find compatible versions for pod "Flutter":
In Podfile:
Flutter (from `Flutter`)
url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) was resolved to 0.0.1, which depends on
Flutter
Specs satisfying the `Flutter (from `Flutter`), Flutter` dependency were found, but they required a higher minimum deployment target.

Solução: No Podfile da pasta example, altere o valor de platform :ios, '' para 12,0.

Problema de compilação: incompatibilidade entre CocoaPods e ambiente de perfil

Se o Xcode falhar ao executar o aplicativo e exibir o erro “The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.”

Realize as etapas a seguir:

  1. Exclua a pasta Pods.

  2. Exclua o arquivo Podfile.lock.

  3. Execute pod install --repo-update.

  4. Feche o Xcode e reabra o projeto para compilá-lo.

Problema de compilação: erro no arquivo Launcher (“Type 'UIApplication' does not conform to protocol 'Launcher'”)

Se você encontrar o seguinte erro durante a compilação: “Type 'UIApplication' does not conform to protocol 'Launcher'”.

// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

/// Protocol for UIApplication methods relating to launching URLs.
///
/// This protocol exists to allow injecting an alternate implementation for testing.
protocol Launcher {
    /// Returns a Boolean value that indicates whether an app is available to handle a URL scheme.
    func canOpenURL(_ url: URL) -> Bool

    /// Attempts to asynchronously open the resource at the specified URL.
    func open(
        _ url: URL,
        options: [UIApplication.OpenExternalURLOptionsKey: Any],
        completionHandler completion: ((Bool) -> Void)?)
}

/// Launcher is intentionally a direct passthroguh to UIApplication.
extension UIApplication: Launcher {}

Solução: Modifique o código conforme mostrado abaixo.

/// Launcher is intentionally a direct passthroguh to UIApplication.
extension UIApplication: Launcher {
    func open(_ url: URL, options: [OpenExternalURLOptionsKey : Any], completionHandler completion: ((Bool) -> Void)?) {
        self.open(url, options: options, completionHandler: completion)
        }
}

Other compilation issues

Verifique se sua versão do Flutter atende aos requisitos de ambiente.

How to obtain an ingest URL

Para obter uma URL de ingestão, consulte Gerar URLs de streaming.

Stream ingest fails in the demo

Use a solução de problemas de autoatendimento para testar sua URL de ingestão e verificar se ela é válida.

How to view information about ingested audio and video streams

Acesse o Gerenciamento de fluxos. Em Active streams, visualize e gerencie os fluxos de áudio e vídeo ingeridos.

How to play back a stream

Após iniciar a ingestão de fluxo, use um player como ApsaraVideo Player, FFplay ou VLC para testar o pull do fluxo. Para obter uma URL de reprodução, consulte Gerar URLs de streaming.