Configurazione per lo sviluppo con Cast Application Framework (CAF) per iOS

Il framework Cast supporta iOS 14 e versioni successive ed è disponibile sia come framework statico sia come framework dinamico.

Consulta il riferimento all'API Google Cast per iOS per le descrizioni di tutti i metodi e le classi.

Configurazione di Xcode

iOS 14

  1. Aggiungi l'SDK iOS per la trasmissione 4.8.3 al tuo progetto

    Se utilizzi CocoaPods, usa pod update per aggiungere l'SDK 4.8.3 al tuo progetto.

    In caso contrario, importa l'SDK manualmente.

  2. Aggiungi NSBonjourServices al tuo Info.plist

    Specifica NSBonjourServices in Info.plist per consentire il rilevamento della rete locale su iOS 14.

    Dovrai aggiungere sia _googlecast._tcp sia _<your-app-id>._googlecast._tcp come servizi per il rilevamento dei dispositivi affinché funzioni correttamente.

    L'appID è il tuo receiverID, ovvero lo stesso ID definito in GCKDiscoveryCriteria.

    Aggiorna la seguente definizione di NSBonjourServices di esempio e sostituisci "ABCD1234" con il tuo appID.

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. Aggiungi NSLocalNetworkUsageDescription al tuo Info.plist

    Ti consigliamo vivamente di personalizzare il messaggio visualizzato nella richiesta della rete locale aggiungendo una stringa di autorizzazione specifica per l'app nel file Info.plist dell'app per NSLocalNetworkUsageDescription, ad esempio per descrivere la scoperta di Cast e altri servizi di scoperta, come DIAL.

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

    Questo messaggio verrà visualizzato nella finestra di dialogo Accesso alla rete locale di iOS come mostrato nel mock.

    Immagine della finestra di dialogo delle autorizzazioni di accesso alla rete locale di Google Cast
  4. Rilasciare di nuovo l'app nell'App Store di Apple

    Ti consigliamo inoltre di rilasciare di nuovo l'app utilizzando la versione 4.8.3 il prima possibile.

iOS 13

iOS 12

Assicurati che l'opzione Accedi alle informazioni del Wi-Fi nella sezione Funzionalità del target sia impostata su "On".

Inoltre, il profilo di provisioning dovrà supportare la funzionalità Accedi alle informazioni sul Wi-Fi. Questo può essere aggiunto nel portale Apple Developer.

Configurazione di CocoaPods

Il modo consigliato per integrare Google Cast è utilizzare CocoaPods. Per l'integrazione, utilizza CocoaPods google-cast-sdk.

Per iniziare, consulta la guida introduttiva.

Una volta configurato CocoaPods, segui la guida all'utilizzo di CocoaPods per creare Podfile e preparare il progetto per l'utilizzo con l'SDK Google Cast.

Ecco un esempio di come aggiungere il CocoaPod google-cast-sdk al 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

Per il tuo progetto, devi specificare un intervallo per i pod per evitare modifiche sostanziali impreviste, come descritto nella guida al file podfile.

In questo snippet sono consentite la versione 4.8.3 e le versioni fino alla successiva versione principale (major.minor.patch):

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

Ad esempio, "~> 1.6.7" includerà tutte le versioni da 1.6.7 a 2.0.0, esclusa quest'ultima.

Configurazione manuale

Le istruzioni riportate di seguito riguardano l'aggiunta dell'SDK Cast per iOS al progetto senza utilizzare CocoaPods:

Download

Dopo aver scaricato la libreria appropriata di seguito, segui i passaggi di configurazione per aggiungere il framework al progetto.

Librerie SDK Sender per iOS di Cast 4.8.3:

Statico Dinamico

Procedura di configurazione

Per installare la libreria:

  1. Scarica ed estrai l'SDK appropriato per il tuo progetto.
  2. Configura la libreria GoogleCastSDK dinamica:
  3. Trascina il file .xcframework decompresso nel progetto principale nel navigatore dei progetti Xcode (non nel progetto Pods, se ne hai uno). Seleziona "Copia tutti gli elementi, se necessario" e aggiungi a tutti i target.
  4. Nel target Xcode, nella scheda General, seleziona Embed and Sign per GoogleCast.xcframework.

Se stai configurando la raccolta statica, segui questi passaggi oltre ai passaggi precedenti:

  1. Configura la libreria Protobuf con la versione minima v3.13.
    1. Se il tuo progetto utilizza CocoaPods:
      1. Apri il Podfile e rimuovi il google-cast-sdk, se presente:
        pod 'google-cast-sdk'
      2. Aggiungi la libreria Protobuf, se non è presente:
        pod 'Protobuf', '3.13'
      3. Esegui pod install nella cartella principale del progetto.
    2. Se il tuo progetto non utilizza CocoaPods:
      1. Rimuovi la versione corrente di GoogleCastSDK, se presente.
      2. Aggiungi la libreria Protobuf 3.13 o versioni successive, seguendo le istruzioni riportate nel repository GitHub di Protobuf.
  2. Nel progetto Xcode, aggiungi i flag -ObjC -lc++ a Impostazioni di compilazione > Altri flag linker.
  3. Individua la cartella Risorse nella directory decompressa e trascina GoogleCastCoreResources.bundle, GoogleCastUIResources.bundle e MaterialDialogs.bundle nel progetto accanto a GoogleCast.xcframework che hai aggiunto in precedenza. Seleziona "Copia tutti gli elementi, se necessario" e aggiungi a tutti i target.

Configurazione di Mac Catalyst

Per le app che supportano Mac Catalyst, utilizza la libreria dinamica dell'SDK Cast. Segui la procedura di configurazione manuale per aggiungere il framework al progetto. Quindi, escludi condizionalmente l'SDK Cast dal target Mac come indicato nella documentazione Apple. Le librerie statiche sono precompilate per l'architettura iOS, il che causa un errore del linker durante la compilazione per il target Mac.