Einrichtung für die Entwicklung mit dem Cast Application Framework (CAF) für iOS

Das Cast-Framework unterstützt iOS 16 und höher und ist sowohl als statisches als auch als dynamisches Framework verfügbar.

Eine Beschreibung aller Klassen und Methoden findest du in der Google Cast iOS API-Referenz.

Xcode-Einrichtung

  1. Cast iOS SDK 4.8.6 zu Ihrem Projekt hinzufügen

    Wenn Sie den Swift Package Manager verwenden, aktualisieren Sie das Paket google-cast-ios-sdk auf Version 4.8.6.

    Andernfalls müssen Sie das SDK manuell einbinden.

  2. NSBonjourServices zu Info.plist hinzufügen

    Gib NSBonjourServices in deiner Info.plist an, damit die Erkennung lokaler Netzwerke erfolgreich ist.

    Sie müssen sowohl _googlecast._tcp als auch _<your-app-id>._googlecast._tcp als Dienste hinzufügen, damit die Geräteerkennung ordnungsgemäß funktioniert.

    Die appID ist Ihre receiverID, die mit der in Ihrer GCKDiscoveryCriteria definierten ID identisch ist.

    Aktualisieren Sie die folgende NSBonjourServices-Beispieldefinition und ersetzen Sie „ABCD1234“ durch Ihre App-ID.

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. NSLocalNetworkUsageDescription zu Info.plist hinzufügen

    Wir empfehlen dringend, die in der Aufforderung für das lokale Netzwerk angezeigte Nachricht anzupassen. Fügen Sie dazu in der Datei Info.plist Ihrer App einen App-spezifischen Berechtigungsstring für NSLocalNetworkUsageDescription hinzu, um beispielsweise die Cast-Erkennung und andere Erkennungsdienste wie DIAL zu beschreiben.

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

    Diese Nachricht wird wie im Mockup gezeigt im iOS-Dialogfeld für den Zugriff auf das lokale Netzwerk angezeigt.

    Bild des Dialogfelds für die Berechtigungen für den Zugriff auf das lokale Netzwerk für Cast
  4. App im Apple App Store neu veröffentlichen

    Wir empfehlen Ihnen, Ihre App so bald wie möglich mit Version 4.8.6 neu zu veröffentlichen.

Swift Package Manager einrichten

Die empfohlene Methode zur Integration von Google Cast ist die Verwendung von Swift Package Manager (SPM). Das Cast iOS SDK-Paket ist im GitHub-Repository google-cast-ios-sdk verfügbar.

So fügen Sie Ihrem Projekt in Xcode das Cast iOS SDK hinzu:

  1. Wählen Sie in Xcode File (Datei) > Add Packages… (Pakete hinzufügen…) aus.
  2. Geben Sie die Repository-URL ein: https://github.com/googlecast/google-cast-ios-sdk.
  3. Wählen Sie die Versionsregeln aus. Wählen Sie beispielsweise Bis zur nächsten Hauptversion mit einer Mindestversion von 4.8.6 aus, um kompatible Updates ohne unerwartete funktionsgefährdende Änderungen zu erhalten.
  4. Klicken Sie auf Paket hinzufügen.
  5. Wählen Sie entweder das Produkt GoogleCastDynamic oder GoogleCastStatic aus und fügen Sie es Ihrem App-Ziel hinzu.

Framework-Variante auswählen

Das Cast iOS SDK-Paket enthält zwei Produkte:

  • GoogleCastDynamic: Das dynamische Framework. Sie enthält alle Asset-Ressourcen, die von den Cast-UI-Komponenten benötigt werden, und erfordert keine zusätzlichen Linker-Flags. Apps, die Mac Catalyst unterstützen, müssen das dynamische Framework verwenden. Weitere Informationen finden Sie unter Mac Catalyst-Einrichtung.
  • GoogleCastStatic: Das statische Framework. Dazu sind die zusätzlichen Einrichtungsschritte erforderlich, die unter Statisches Framework einrichten beschrieben sind.

Statisches Framework einrichten

Statische Frameworks können keine Ressourcen-Bundles enthalten. Daher kann Swift Package Manager die von den Cast-UI-Komponenten benötigten Asset-Ressourcen (z. B. UI-Bilder, Storyboards und Lokalisierungsdateien) nicht automatisch mit dem GoogleCastStatic-Produkt bündeln. Wenn Sie GoogleCastStatic zu Ihrem Ziel hinzufügen, führen Sie die folgenden Schritte aus:

  1. Fügen Sie in Ihrem Xcode-Projekt die Flags -ObjC -lc++ unter Build Settings > Other Linker Flags hinzu.
  2. Wenn deine App die Cast-UI-Komponenten verwendet, füge die Asset-Bundles manuell zu deinem Projekt hinzu:
    1. Laden Sie die statische Bibliothek unter Downloads herunter. Achten Sie darauf, dass die Version der statischen Bibliothek mit der Version des hinzugefügten Pakets übereinstimmt.
    2. Suchen Sie im entpackten Verzeichnis den Ordner Resources und ziehen Sie alle .bundle-Dateien in Ihr Xcode-Projekt. Setzen Sie ein Häkchen bei „Alle Elemente bei Bedarf kopieren“ und fügen Sie sie allen Zielen hinzu.

CocoaPods-Einrichtung

Manuelle Einrichtung

In der folgenden Anleitung wird beschrieben, wie Sie das Cast iOS SDK ohne Swift Package Manager zu Ihrem Projekt hinzufügen:

Downloads

Nachdem Sie die entsprechende Bibliothek unten heruntergeladen haben, folgen Sie den Einrichtungsschritten, um das Framework Ihrem Projekt hinzuzufügen.

Cast iOS Sender SDK 4.8.6-Bibliotheken:

Statisch Dynamisch

Einrichtungsschritte

So installieren Sie die Bibliothek:

  1. Laden Sie das entsprechende SDK für Ihr Projekt herunter und extrahieren Sie es.
  2. Richten Sie die dynamische GoogleCastSDK-Bibliothek ein:
  3. Ziehen Sie die entpackte .xcframework-Datei im Xcode-Projektnavigator in Ihr Hauptprojekt. Setzen Sie ein Häkchen bei „Alle Elemente bei Bedarf kopieren“ und fügen Sie sie allen Zielen hinzu.
  4. Wählen Sie in Ihrem Xcode-Ziel auf dem Tab General die Option Embed and Sign für GoogleCast.xcframework aus.

Wenn Sie die dynamische Bibliothek einrichten, führen Sie zusätzlich zu den vorherigen Schritten die folgenden Schritte aus:

  1. Entfernen Sie die aktuelle Version von GoogleCastSDK, falls vorhanden.
  2. Fügen Sie die Protobuf-Bibliothek v3.13 oder höher hinzu. Folgen Sie dazu der Anleitung im Protobuf-GitHub-Repository.

Wenn Sie die statische Bibliothek einrichten, führen Sie zusätzlich zu den vorherigen Schritten die folgenden Schritte aus:

  1. Fügen Sie in Ihrem Xcode-Projekt die Flags -ObjC -lc++ unter Build Settings > Other Linker Flags hinzu.
  2. Suchen Sie im entpackten Verzeichnis den Ordner „Resources“ und ziehen Sie alle .bundle-Dateien in Ihr Projekt neben die zuvor hinzugefügte GoogleCast.xcframework. Setzen Sie ein Häkchen bei „Bei Bedarf alle Elemente kopieren“ und fügen Sie die Elemente allen Zielen hinzu.

Mac Catalyst-Einrichtung

Verwenden Sie für Apps, die Mac Catalyst unterstützen, die dynamische Bibliothek des Cast SDK. Folgen Sie der Anleitung zur manuellen Einrichtung, um das Framework Ihrem Projekt hinzuzufügen. Schließen Sie dann das Cast SDK bedingt vom Mac-Ziel aus, wie in der Apple-Dokumentation beschrieben. Statische Bibliotheken sind für die iOS-Architektur vorkompiliert. Das führt zu einem Linker-Fehler, wenn sie für das Mac-Ziel erstellt werden.