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

Il framework Cast supporta iOS 14 e versioni successive ed è disponibile in framework statici e dinamici.

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

Configurazione di Xcode

iOS 14

  1. Aggiungere l'SDK Cast per iOS 4.8.3 al progetto

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

    In caso contrario, recupera manualmente l'SDK.

  2. Aggiungi NSBonjourServices al tuo Info.plist

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

    Per il corretto funzionamento del rilevamento dei dispositivi, devi aggiungere sia _googlecast._tcp sia _<your-app-id>._googlecast._tcp come servizi.

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

    Aggiorna la seguente definizione di NSBonjourServices 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 mostrato nel prompt della rete locale aggiungendo una stringa di autorizzazione specifica per l'app nel file Info.plist dell'app per NSLocalNetworkUsageDescription, ad esempio per descrivere l'individuazione di Cast e altri servizi di individuazione, 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 di accesso alla rete locale di iOS come mostrato nel mock-up.

    Immagine della finestra di dialogo delle autorizzazioni di accesso alla rete locale per la trasmissione
  4. Pubblicare di nuovo l'app sull'Apple App Store

    Ti consigliamo inoltre di ripubblicare la tua app utilizzando la versione 4.8.3 il prima possibile.

iOS 13

iOS 12

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

Inoltre, il tuo profilo di provisioning dovrà supportare la funzionalità Accesso alle informazioni Wi-Fi. Può essere aggiunto nel portale Apple Developer.

Configurazione di CocoaPods

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

Per iniziare, segui la guida introduttiva.

Una volta configurato CocoaPods, segui la guida all'utilizzo di CocoaPods per creare il tuo 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 tuo 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 che causano interruzioni impreviste, come descritto nella guida al 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" includerebbe tutte le versioni dalla 1.6.7 fino alla 2.0.0, esclusa quest'ultima.

Configurazione manuale

Le seguenti istruzioni riguardano l'aggiunta dell'SDK Cast per iOS al tuo progetto senza utilizzare CocoaPods:

Download

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

Librerie dell'SDK Cast iOS Sender 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 dinamica GoogleCastSDK:
  3. Trascina il file .xcframework decompresso nel progetto principale nel navigatore del progetto Xcode (non nel progetto Pods, se ne hai uno). Seleziona "Copia tutti gli elementi se necessario" e aggiungili a tutti i target.
  4. Nel target Xcode, nella scheda General, seleziona Embed and Sign per GoogleCast.xcframework.

Se stai configurando la libreria statica, segui questi passaggi oltre a quelli 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 attuale di GoogleCastSDK, se presente.
      2. Aggiungi la libreria Protobuf v3.13 o versioni successive, seguendo le istruzioni riportate nel repository GitHub di Protobuf.
  2. Nel progetto Xcode, aggiungi i flag -ObjC -lc++ a Build Settings (Impostazioni di build) > Other Linker Flags (Altri flag del linker).
  3. Individua la cartella Resources nella directory decompressa e trascina GoogleCastCoreResources.bundle, GoogleCastUIResources.bundle e MaterialDialogs.bundle nel tuo progetto accanto a GoogleCast.xcframework che hai aggiunto in precedenza. Seleziona "Copia tutti gli elementi se necessario" e aggiungili 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 tuo progetto. Poi escludi in modo condizionale Cast SDK dalla destinazione 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 in base alla destinazione Mac.