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

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

Beschreibungen aller Klassen und Methoden finden Sie in der Google Cast iOS API-Referenz.

Xcode-Einrichtung

iOS 14

  1. Cast iOS SDK 4.8.3 in Ihr Projekt einbinden

    Wenn Sie CocoaPods verwenden, fügen Sie das SDK 4.8.3 mit pod update zu Ihrem Projekt hinzu.

    Andernfalls müssen Sie das SDK manuell abrufen.

  2. NSBonjourServices zu Ihrem Info.plist hinzufügen

    Geben Sie NSBonjourServices in Ihrem Info.plist an, damit die Erkennung lokaler Netzwerke unter iOS 14 funktioniert.

    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 deine receiverID, also dieselbe ID, die in deiner GCKDiscoveryCriteria definiert ist.

    Aktualisieren Sie die folgende Beispieldefinition NSBonjourServices 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 Ihrem Info.plist hinzufügen

    Wir empfehlen dringend, die im Dialogfeld „Lokales Netzwerk“ angezeigte Meldung anzupassen, indem Sie in der Datei Info.plist Ihrer App einen app-spezifischen Berechtigungsstring für NSLocalNetworkUsageDescription hinzufügen, um z. B. die Suche nach Cast-Geräten und anderen Suchdiensten 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 Meldung wird im Dialogfeld „Zugriff auf das lokale Netzwerk“ von iOS angezeigt, wie im Mockup zu sehen ist.

    Bild des Berechtigungsdialogs für den Zugriff auf das lokale Netzwerk beim Streamen
  4. App im Apple App Store neu veröffentlichen

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

iOS 13

finden Sie Informationen dazu, wie sich die Änderungen auf Ihre App auswirken.

iOS 12

Achten Sie darauf, dass der Schalter Auf WLAN-Informationen zugreifen im Abschnitt Funktionen des Ziels auf „Ein“ gesetzt ist.

Außerdem muss Ihr Bereitstellungsprofil die Funktion Access WiFi Information (Auf WLAN-Informationen zugreifen) unterstützen. Sie können sie im Apple Developer Portal hinzufügen.

CocoaPods einrichten

Die empfohlene Methode zum Einbinden von Google Cast ist die Verwendung von CocoaPods. Verwenden Sie für die Integration die google-cast-sdk-CocoaPods.

Startleitfaden folgen

Nachdem Sie CocoaPods eingerichtet haben, folgen Sie der Anleitung zur Verwendung von CocoaPods, um Podfile zu erstellen und Ihr Projekt für die Verwendung mit dem Google Cast SDK vorzubereiten.

Hier ist ein Beispiel für das Hinzufügen des CocoaPods google-cast-sdk zu Ihrem 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

Für Ihr Projekt sollten Sie einen Bereich für Ihre Pods angeben, um unerwartete Breaking Changes zu vermeiden. Weitere Informationen finden Sie im Podfile-Leitfaden.

In diesem Snippet sind Version 4.8.3 und die Versionen bis zur nächsten Hauptversion (major.minor.patch) zulässig:

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

Beispiel: „~> 1.6.7“ umfasst alle Versionen ab 1.6.7 bis, aber nicht einschließlich, Version 2.0.0.

Manuelle Einrichtung

Die folgende Anleitung beschreibt, wie Sie das Cast iOS SDK Ihrem Projekt hinzufügen, ohne CocoaPods zu verwenden:

Downloads

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

Cast iOS Sender SDK 4.8.3-Bibliotheken:

Statisch Dynamisch

Einrichtungsschritte

So installieren Sie die Bibliothek:

  1. Laden Sie das passende SDK für Ihr Projekt herunter und entpacken Sie es.
  2. Richten Sie die dynamische GoogleCastSDK-Bibliothek ein:
  3. Ziehen Sie die entzippte Datei .xcframework in Ihr Hauptprojekt im Xcode-Projektnavigator (nicht in das Pods-Projekt, falls vorhanden). Setzen Sie ein Häkchen bei „Alle Elemente bei Bedarf kopieren“ und fügen Sie alle Ziele hinzu.
  4. Wählen Sie in Ihrem Xcode-Ziel unter dem Tab General die Option Embed and Sign für GoogleCast.xcframework aus.

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

  1. Richten Sie die Protobuf-Bibliothek mit der Mindestversion 3.13 ein.
    1. Wenn in Ihrem Projekt CocoaPods verwendet wird:
      1. Öffnen Sie Podfile und entfernen Sie google-cast-sdk, falls vorhanden:
        pod 'google-cast-sdk'
      2. Fügen Sie die Bibliothek Protobuf hinzu, falls sie nicht vorhanden ist:
        pod 'Protobuf', '3.13'
      3. Führen Sie pod install im Stammordner Ihres Projekts aus.
    2. Wenn in Ihrem Projekt keine CocoaPods verwendet werden:
      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.
  2. Fügen Sie in Ihrem Xcode-Projekt die Flags -ObjC -lc++ zu Build Settings > Other Linker Flags hinzu.
  3. Suchen Sie im entzippten Verzeichnis nach dem Ordner „Resources“ und ziehen Sie GoogleCastCoreResources.bundle, GoogleCastUIResources.bundle und MaterialDialogs.bundle in Ihr Projekt, neben die zuvor hinzugefügte Datei GoogleCast.xcframework. Aktivieren Sie „Alle Elemente bei Bedarf kopieren“ und fügen Sie alle Ziele hinzu.

Mac Catalyst-Einrichtung

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