Configuration pour le développement avec le framework d'application Cast (CAF) pour iOS

Le framework Cast est compatible avec iOS 14 et versions ultérieures, et est disponible les frameworks statiques et dynamiques.

Consultez la documentation de référence de l'API Google Cast pour iOS pour des descriptions de toutes les classes et méthodes.

Configuration de Xcode

iOS 14

  1. Ajouter le SDK Cast pour iOS 4.8.3 à votre projet

    Si vous utilisez CocoaPods, utilisez pod update pour ajouter le SDK 4.8.3 à votre projet.

    Sinon, extraire manuellement le SDK.

  2. Ajouter NSBonjourServices à votre Info.plist

    Indiquez NSBonjourServices dans votre Info.plist pour permettre la réussite de la détection de réseaux locaux sur iOS 14.

    Vous devez ajouter _googlecast._tcp et _<your-app-id>._googlecast._tcp en tant que services pour l'appareil la découverte pour fonctionner correctement.

    L'appID correspond à votre "receiveID" (ID du récepteur), qui est le même que celui défini dans votre GCKDiscoveryCriteria

    Mettez à jour l'exemple de définition NSBonjourServices suivant et remplacez "ABCD1234" par l'ID de votre application.

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. Ajouter NSLocalNetworkUsageDescription à votre Info.plist

    Nous vous recommandons vivement de personnaliser le message affiché dans le invite réseau en ajoutant une chaîne d'autorisation spécifique à l'application dans le fichier Fichier Info.plist pour NSLocalNetworkUsageDescription, comme pour décrire Cast de découverte et d'autres services de découverte, comme DIAL.

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

    Ce message apparaîtra dans la boîte de dialogue iOS Local Network Access en tant que comme indiqué dans la maquette.

    Image de la boîte de dialogue &quot;Autorisations d&#39;accès au réseau local Cast&quot;
  4. Publier à nouveau votre application sur l'App Store d'Apple

    Nous vous recommandons également de publier à nouveau votre application en utilisant la version 4.8.3 dès que possible.

iOS 13

iOS 12

Assurez-vous que le bouton Accéder aux informations Wi-Fi dans la section Fonctionnalités de la cible est définie sur "Activé".

De plus, votre profil de configuration doit être compatible avec le protocole Access Wi-Fi Informations. Vous pouvez l'ajouter Apple Developer Portal.

Configuration de CocoaPods

La méthode recommandée pour intégrer Google Cast consiste à utiliser CocoaPods : Pour l'intégration, utilisez le google-cast-sdk CocoaPods.

Pour commencer, suivez les guide de démarrage.

Une fois CocoaPods configuré, suivez le guide d'utilisation de CocoaPods pour créer votre Podfile et préparer votre projet avec Google Cast SDK.

Voici un exemple d'ajout du CocoaPod google-cast-sdk à votre 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

Pour votre projet, vous devez spécifier une plage pour vos pods afin d'éviter les modifications destructives, comme indiqué dans le guide Podfile.

Dans cet extrait, la version 4.8.3 et les versions suivantes version majeure (major.minor.patch) sont autorisées:

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

Par exemple, '~> 1.6.7&#39; inclut toutes les versions à partir de la version 1.6.7, mais pas y compris la version 2.0.0.

Configuration manuelle

Les instructions suivantes concernent l'ajout du SDK Cast pour iOS à votre projet sans utiliser CocoaPods:

Téléchargements

Après avoir téléchargé la bibliothèque appropriée ci-dessous, suivez les procédure de configuration pour ajouter le framework à votre projet.

Bibliothèques du SDK Cast pour iOS Sender 4.8.3:

Statique Dynamique

Procédure de configuration

Pour installer la bibliothèque:

  1. Téléchargez et extrayez le SDK approprié pour votre projet.
  2. Configurez la bibliothèque dynamique du SDK GoogleCast:
  3. Faites glisser le fichier .xcframework décompressé vers votre projet principal dans le Navigateur de projets Xcode (et non dans le projet "Pods" si vous en avez un) Cochez la case "Copier tous les éléments si nécessaire", puis ajoutez à toutes les cibles.
  4. Dans votre cible Xcode, sous l'onglet General, sélectionnez Embed and Sign pour GoogleCast.xcframework.

Si vous configurez la bibliothèque statique, suivez les étapes ci-dessous en plus de les étapes précédentes:

  1. Configurer la bibliothèque Protobuf avec la version minimale version 3.13.
    1. Si votre projet utilise CocoaPods:
      1. Ouvrez votre Podfile et supprimez le google-cast-sdk, le cas échéant:
        pod 'google-cast-sdk'
      2. Ajoutez la bibliothèque Protobuf si elle n'est pas présente:
        pod 'Protobuf', '3.13'
      3. Exécutez pod install dans le dossier racine de votre projet.
    2. Si votre projet n'utilise pas CocoaPods:
      1. Supprimez la version actuelle de GoogleCastSDK, le cas échéant.
      2. Ajoutez la bibliothèque Protobuf version 3.13 ou ultérieure, en suivant les instructions Protobuf GitHub repo.
  2. Dans votre projet Xcode, ajoutez les options -ObjC -lc++ pour Build Settings > Autres indicateurs Linker :
  3. Localisez le dossier "Resources" dans le répertoire décompressé, puis faire glisser GoogleCastCoreResources.bundle, GoogleCastUIResources.bundle et MaterialDialogs.bundle dans votre projet à côté du GoogleCast.xcframework que vous ajouté précédemment. Cochez la case "Copier tous les éléments si nécessaire", puis ajoutez à tous les éléments. cibles.

Configuration Mac Catalyst

Pour les applications compatibles avec Mac Catalyst, utilisez la bibliothèque dynamique du SDK Cast. Suivez la procédure de configuration manuelle pour ajouter le à votre projet. Exclure ensuite de manière conditionnelle le SDK Cast de Mac comme indiqué dans les Documentation Apple Les bibliothèques statiques sont précompilées pour l'architecture iOS, ce qui génère lors de la compilation sur la cible Mac.