Configuração para desenvolver com o framework de aplicativo do Google Cast (CAF, na sigla em inglês) para iOS

O framework Cast é compatível com o iOS 16 e versões mais recentes e está disponível em frameworks estáticos e dinâmicos.

Consulte a referência da API Google Cast para iOS e veja descrições de todas as classes e métodos.

Configuração do Xcode

  1. Adicione o SDK do Cast para iOS 4.8.6 ao seu projeto

    Se você estiver usando o Gerenciador de pacotes do Swift, atualize o pacote google-cast-ios-sdk para a versão 4.8.6.

    Caso contrário, extraia o SDK manualmente.

  2. Adicionar NSBonjourServices ao seu Info.plist

    Especifique NSBonjourServices no seu Info.plist para permitir que a descoberta de rede local seja bem-sucedida.

    Você precisa adicionar _googlecast._tcp e _<your-app-id>._googlecast._tcp como serviços para que a descoberta de dispositivos funcione corretamente.

    O appID é seu receiverID, que é o mesmo ID definido no GCKDiscoveryCriteria.

    Atualize o exemplo de definição NSBonjourServices e substitua "ABCD1234" pelo seu appID.

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. Adicionar NSLocalNetworkUsageDescription ao seu Info.plist

    Recomendamos personalizar a mensagem mostrada na solicitação de rede local adicionando uma string de permissão específica do app no arquivo Info.plist do app para o NSLocalNetworkUsageDescription, como para descrever a descoberta do Cast e outros serviços de descoberta, como o DIAL.

    <key>NSLocalNetworkUsageDescription</key>
    <string>${PRODUCT_NAME} uses the local network to discover Cast-enabled devices on your WiFi
    network.</string>

    Essa mensagem vai aparecer como parte da caixa de diálogo de acesso à rede local do iOS, conforme mostrado no modelo.

    Imagem da caixa de diálogo de permissões de acesso à rede local do Google Cast
  4. Relançar o app na App Store da Apple

    Recomendamos que você relance seu app usando a versão 4.8.6 o mais rápido possível.

Configuração do Gerenciador de pacotes do Swift

A maneira recomendada de integrar o Google Cast é usando o Gerenciador de pacotes do Swift (SPM). O pacote do SDK do Cast para iOS está disponível no repositório do GitHub google-cast-ios-sdk.

Para adicionar o SDK do Cast para iOS ao seu projeto no Xcode:

  1. No Xcode, selecione Arquivo > Adicionar pacotes....
  2. Insira o URL do repositório: https://github.com/googlecast/google-cast-ios-sdk.
  3. Selecione as regras de controle de versões. Por exemplo, selecione Até a próxima versão principal com uma versão mínima de 4.8.6 para receber atualizações compatíveis sem mudanças inesperadas.
  4. Clique em Adicionar pacote.
  5. Selecione o produto GoogleCastDynamic ou GoogleCastStatic e adicione-o à sua meta de app.

Escolher uma variante de framework

O pacote do SDK do Cast para iOS oferece dois produtos:

  • GoogleCastDynamic: o framework dinâmico. Ele inclui todos os recursos de ativos necessários pelos componentes da interface do Cast e não exige flags de vinculador adicionais. Os apps compatíveis com o Mac Catalyst precisam usar o framework dinâmico. Para mais informações, consulte Configuração do Mac Catalyst.
  • GoogleCastStatic: o framework estático. Ele exige as etapas de configuração adicionais descritas em Configuração do framework estático.

Configuração de framework estático

Frameworks estáticos não podem incluir pacotes de recursos. Como resultado, o Swift Package Manager não pode agrupar automaticamente os recursos de ativos necessários pelos componentes da interface do Cast (como imagens da interface, storyboards e arquivos de localização) com o produto GoogleCastStatic. Se você adicionar GoogleCastStatic à sua meta, siga estas etapas:

  1. No projeto do Xcode, adicione as flags -ObjC -lc++ a Configurações de build > Outras flags do vinculador.
  2. Se o app usa os componentes da interface do Cast, adicione manualmente os pacotes de recursos ao projeto:
    1. Faça o download da biblioteca estática em Downloads. Verifique se a versão da biblioteca estática corresponde à versão do pacote adicionado.
    2. Localize a pasta Resources no diretório descompactado e arraste todos os arquivos .bundle para o projeto do Xcode. Marque "Copiar todos os itens se necessário" e adicione a todos os destinos.

Configuração do CocoaPods

Configuração manual

As instruções a seguir são para adicionar o SDK do Cast para iOS ao seu projeto sem usar o Swift Package Manager:

Downloads

Depois de baixar a biblioteca adequada abaixo, siga as etapas de configuração para adicionar o framework ao seu projeto.

Bibliotecas do SDK do remetente do iOS 4.8.6:

Estático Dinâmico

Etapas da configuração

Para instalar a biblioteca:

  1. Faça o download e extraia o SDK adequado para seu projeto.
  2. Configure a biblioteca dinâmica GoogleCastSDK:
  3. Arraste o .xcframework descompactado para o projeto principal no navegador de projetos do Xcode. Marque "Copiar todos os itens, se necessário" e adicione a todos os destinos.
  4. No destino do Xcode, na guia General, selecione Embed and Sign para GoogleCast.xcframework.

Se você estiver configurando a biblioteca dinâmica, siga estas etapas além das anteriores:

  1. Remova a versão atual de GoogleCastSDK, se houver.
  2. Adicione a biblioteca Protobuf v3.13 ou mais recente, seguindo as instruções encontradas no repositório do Protobuf no GitHub.

Se você estiver configurando a biblioteca estática, siga estas etapas além das anteriores:

  1. No projeto do Xcode, adicione as flags -ObjC -lc++ a Build Settings > Other Linker Flags.
  2. Localize a pasta "Resources" no diretório descompactado e arraste todos os arquivos .bundle para o projeto ao lado do GoogleCast.xcframework adicionado anteriormente. Marque "Copiar todos os itens, se necessário" e adicione a todos os destinos.

Configuração do Mac Catalyst

Para apps compatíveis com o Mac Catalyst, use a biblioteca dinâmica do SDK do Cast. Siga o processo de configuração manual para adicionar o framework ao seu projeto. Em seguida, exclua condicionalmente o SDK do Cast da meta do Mac, conforme mencionado na documentação da Apple. As bibliotecas estáticas são pré-compiladas para a arquitetura iOS, o que causa um erro do vinculador ao criar para o destino Mac.