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

O framework do Cast oferece suporte ao iOS 14 e versões mais recentes e está disponível em frameworks estáticos e dinâmicos.

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

Configuração do Xcode

iOS 14

  1. Adicionar o SDK do Cast para iOS 4.8.3 ao seu projeto

    Se você estiver usando o CocoaPods, use pod update para adicionar o SDK 4.8.3 ao seu projeto.

    Caso contrário, insira o SDK manualmente.

  2. Adicionar NSBonjourServices ao Info.plist

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

    É necessário adicionar _googlecast._tcp e _<your-app-id>._googlecast._tcp como serviços para que a descoberta de dispositivos funcione corretamente.

    O appID é o ID do receptor, que é o mesmo ID definido em GCKDiscoveryCriteria.

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

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

    Recomendamos que você personalize a mensagem mostrada no comando 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 Google Cast e outros serviços de descoberta, como 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. Lançar o app novamente na App Store da Apple

    Recomendamos que você também lance o app novamente usando a versão 4.8.3 o mais rápido possível.

iOS 13

iOS 12

Verifique se a chave Acesso às informações do Wi-Fi na seção Capabilities do destino está definida como "On".

Além disso, seu perfil de provisionamento precisa oferecer suporte ao recurso Acesso a informações de Wi-Fi. Isso pode ser adicionado no Portal para desenvolvedores da Apple.

Configuração do CocoaPods

A maneira recomendada de integrar o Google Cast é usar o CocoaPods. Para integração, use o google-cast-sdk CocoaPods.

Para começar, siga o guia de primeiros passos.

Depois de configurar o CocoaPods, siga o guia de uso do CocoaPods para criar o Podfile e deixar seu projeto pronto para uso com o SDK do Google Cast.

Confira um exemplo de como adicionar o CocoaPod google-cast-sdk ao Podfile:

use_frameworks!

platform :ios, '14.0'

def target_pods
  pod 'google-cast-sdk'
end

target 'CastVideos-objc' do
  target_pods
end
target 'CastVideos-swift' do
  target_pods
end

Para seu projeto, especifique um intervalo para os pods para evitar mudanças quebradas inesperadas, conforme detalhado no guia de podfiles.

Neste snippet, a versão 4.8.3 e as versões até a próxima versão principal (major.minor.patch) são permitidas:

pod 'google-cast-sdk', '~> 4.8.3'

Por exemplo, "~> 1.6.7" incluiria todas as versões da 1.6.7 até, mas não incluindo, a versão 2.0.0.

Configuração manual

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

Downloads

Depois de fazer o download da biblioteca adequada abaixo, siga as etapas de configuração para adicionar o framework ao projeto.

Bibliotecas do SDK do transmissor do iOS do Cast 4.8.3:

Estático Dinâmico

Etapas da configuração

Para instalar a biblioteca:

  1. Faça o download e extraia o SDK apropriado para seu projeto.
  2. Configurar a biblioteca dinâmica do GoogleCastSDK:
  3. Arraste o .xcframework descompactado para o projeto principal no navegador de projetos do Xcode (não no projeto do Pods, se você tiver um). 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 estática, siga estas etapas além das anteriores:

  1. Configure a biblioteca Protobuf com a versão mínima v3.13.
    1. Se o projeto usa CocoaPods:
      1. Abra o Podfile e remova o google-cast-sdk, se ele estiver presente:
        pod 'google-cast-sdk'
      2. Adicione a biblioteca Protobuf, se ela não estiver presente:
        pod 'Protobuf', '3.13'
      3. Execute pod install na pasta raiz do projeto.
    2. Se o projeto não estiver usando o CocoaPods:
      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 GitHub.
  2. No projeto do Xcode, adicione as flags -ObjC -lc++ a Build Settings > Other Linker Flags.
  3. Localize a pasta Resources no diretório descompactado e arraste GoogleCastCoreResources.bundle, GoogleCastUIResources.bundle e MaterialDialogs.bundle para o projeto ao lado do GoogleCast.xcframework que você adicionou anteriormente. Marque "Copiar todos os itens, se necessário" e adicione a todos os destinos.

Configuração do Mac Catalyst

Para apps com suporte ao 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 do destino Mac, conforme mencionado na documentação da Apple. As bibliotecas estáticas são pré-compiladas para a arquitetura do iOS, o que causa um erro de linker ao criar para o destino do Mac.