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

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Das Cast-Framework unterstützt iOS 12 und höher und ist sowohl mit statischen als auch mit dynamischen Frameworks ausgestattet.

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

Beachten Sie, dass Cast-Geräte der neueren Generation den Gastmodus für iOS unterstützen, Geräte der älteren Generation jedoch nicht. Weitere Informationen finden Sie unter Gastmodus – Unterstützte Übertragungsgeräte.

Xcode-Einrichtung

iOS 14

  1. Cast iOS-SDK 4.7.0 Ihrem Projekt hinzufügen

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

    Andernfalls können Sie das SDK manuell einfügen.

  2. NSBonjourServices zu Info.plist hinzufügen

    Geben Sie NSBonjourServices im Info.plist an, damit die lokale Netzwerkerkennung unter iOS 14 erfolgreich ausgeführt werden kann.

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

    Die appID ist deine Receiver-ID. Das ist dieselbe ID, die in deinem GCKDiscoveryCriteria definiert ist.

    Aktualisieren Sie die folgende NSBonjourServices-Beispieldefinition und ersetzen Sie "ABCD1234" durch Ihre Anwendungs-ID.

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. Add NSLocalNetworkUsageDescription to your Info.plist

    We strongly recommend that you customize the message shown in the Local Network prompt by adding an app-specific permission string in your app's Info.plist file for the NSLocalNetworkUsageDescription such as to describe Cast discovery and other discovery services, like DIAL.

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

    This message will appear as part of the iOS Local Network Access dialog as shown in the mock.

    Cast Local Network Access permissions dialog image
  4. Re-release your app to the Apple App Store

    We recommend you also re-release your app using 4.7.0 as soon as possible.

iOS 13

iOS 12

Ensure that the Access WiFi Information switch in the Capabilities section of the target is set to "On".

Additionally, your provisioning profile will need to support the Access WiFi Information capability. This can be added in the Apple Developer Portal.

CocoaPods setup

The recommended way of integrating Google Cast is using CocoaPods.

The google-cast-sdk and google-cast-sdk-no-bluetooth CocoaPods are available for download.

Use the google-cast-sdk-no-bluetooth if your app does not require guest mode or you do not wish to require Bluetooth® permission.

To get started, follow the getting started guide.

Once CocoaPods is set up, follow the using CocoaPods guide to get your Podfile created and your project ready to use with the Google Cast SDK.

Here's an example of how to add the google-cast-sdk CocoaPod to your Podfile:

use_frameworks!

platform :ios, '12.0'

def target_pods
  pod 'google-cast-sdk'
end

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

Das folgende Beispiel zeigt, wie Sie den CocoaPod google-cast-sdk-no-bluetooth zu Ihrem Podfile hinzufügen:

use_frameworks!

platform :ios, '12.0'

def target_pods
  pod 'google-cast-sdk-no-bluetooth'
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 funktionsgefährdende Änderungen zu vermeiden. Eine entsprechende Anleitung finden Sie in der Podfile-Anleitung.

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

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

Beispiel: „~> 1.6.7“ würde alle Versionen von 1.6.7 bis einschließlich, Version 2.0.0, enthalten.

Manuelle Einrichtung

So fügen Sie das Cast iOS SDK Ihrem Projekt ohne CocoaPods hinzu:

Downloads

Nachdem Sie die folgende Bibliothek heruntergeladen haben, führen Sie die Einrichtungsschritte aus, um das Framework Ihrem Projekt hinzuzufügen. Die Einrichtungsanforderungen für XCFrameworks sind dieselben wie bei den Legacy-Frameworks.

Bibliotheken ohne Gastmodus wurden für Situationen bereitgestellt, in denen Ihre App die Funktion nicht benötigt oder Sie keine Bluetooth®-Berechtigungen benötigen, die in iOS 13 eingeführt wurden. Weitere Informationen finden Sie im Dokument zu den Änderungen von iOS 13.

Universal-Framework

Cast Sender SDK 4.7.0-Bibliotheken für iOS:

Statisch mit Gastmodus Statisch ohne Gastmodus

Dynamisch mit Gastmodus Dynamisch ohne Gastmodus

XCFramework (Beta)

Ab Version 4.7.1 unterstützt das Cast iOS SDK SDK XXFrameworks für die Entwicklung auf Apple M1-Computern sowie für die Fehlerbehebung mit dem M1 iOS Simulator.

Diese Bibliotheken befinden sich derzeit in der Betaphase. Bitte melde etwaige Probleme dem Cast SDK Issue Tracker.

Cast Sender SDK XCFramework 4.7.1 von iOS:

Statisches XCFramework mit Gastmodus Statisches XCFramework ohne Gastmodus

Dynamisches XCFramework mit Gastmodus Dynamisches XCFramework ohne Gastmodus

Einrichtungsschritte

So installieren Sie eine der statischen Bibliotheken:

  1. Laden Sie das entsprechende statische SDK für Ihr Projekt herunter und entpacken Sie es.
  2. Richten Sie die Protobuf-Bibliothek mit der Mindestversion v3.13 ein.
    1. Wenn Ihr Projekt CocoaPods verwendet:
      1. Öffnen Sie Podfile und entfernen Sie google-cast-sdk, falls vorhanden:
        pod 'google-cast-sdk'
      2. Fügen Sie die Protobuf-Bibliothek hinzu, falls sie nicht vorhanden ist:
        pod 'Protobuf', '3.13'
      3. Führen Sie pod install im Stammverzeichnis Ihres Projekts aus.
    2. Wenn Ihr Projekt keine CocoaPods verwendet:
      1. Entferne die aktuelle Version von GoogleCastSDK, falls vorhanden.
      2. Fügen Sie die Protobuf-Bibliothek ab Version 3.13 hinzu. Folgen Sie dazu der Anleitung im GitHub-Repository für Protobuf.
  3. Ziehen Sie die entpackte .framework oder .xcframework in das Hauptprojekt im Xcode-Projektnavigator (nicht in das Pod-Projekt, falls vorhanden). Setzen Sie ein Häkchen bei „Alle Elemente kopieren (falls erforderlich)“ und fügen Sie sie allen Zielen hinzu.
  4. Fügen Sie in Ihrem Xcode-Projekt die Flags -ObjC -lc++ unter Build Settings > Other Linker Flags hinzu.
  5. Klicken Sie mit der rechten Maustaste auf GoogleCast.framework oder GoogleCast.xcframework in Ihrem Projekt und wählen Sie „In Finder anzeigen“ aus.
  6. Ziehen Sie GoogleCastCoreResources.bundle und GoogleCastUIResources.bundle in das Projekt neben dem zuvor hinzugefügten GoogleCast.framework oder GoogleCast.xcframework, klicken Sie das Kästchen „Alle Elemente kopieren (falls erforderlich)“ an und fügen Sie es allen Zielen hinzu.

So installieren Sie eine der dynamischen Bibliotheken:

  1. Laden Sie das entsprechende dynamische SDK für Ihr Projekt herunter und entpacken Sie es.
  2. Richten Sie die dynamische GoogleCastSDK-Bibliothek ein:
    1. Wenn Ihr Projekt CocoaPods verwendet:
      1. Öffnen Sie Podfile und entfernen Sie:
        pod 'google-cast-sdk'
      2. Führen Sie pod install im Stammverzeichnis Ihres Projekts aus.
    2. Wenn Ihr Projekt keine CocoaPods verwendet, entfernen Sie die aktuelle Google Cast-Bibliothek.
  3. Ziehen Sie die entpackte .framework oder .xcframework in das Hauptprojekt im Xcode-Projektnavigator (nicht in das Pod-Projekt, falls vorhanden). Setzen Sie ein Häkchen bei „Alle Elemente kopieren (falls erforderlich)“ 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.framework oder GoogleCast.xcframework aus.

Mac Catalyst einrichten

Verwenden Sie für Apps, die Mac Catalyst unterstützen, die dynamische Bibliothek des Cast SDK. Folgen Sie dem manuellen Einrichtungsvorgang, um das Framework Ihrem Projekt hinzuzufügen. Schließen Sie dann das Cast SDK wie in der Apple-Dokumentation erwähnt aus dem Mac-Ziel aus. Statische Bibliotheken sind für die iOS-Architektur vorkompiliert. Dies führt bei der Erstellung für das Mac-Ziel zu einem Verknüpfungsfehler.

App im App Store veröffentlichen

Bevor Sie Ihre App im App Store veröffentlichen, müssen Sie das Shell-Skript strip_unused_archs.sh ausführen, um nicht verwendete Architekturen aus dem App Bundle zu entfernen. Dieses Skript befindet sich im Cast SDK for iOS.