Przygotowanie do programowania za pomocą platformy Cast Application Framework (CAF) na iOS

Platforma Cast obsługuje system iOS w wersji 14 lub nowszej i jest dostępna w ramach platform statycznych i dynamicznych.

Opisy wszystkich klas i metod znajdziesz w dokumentacji interfejsu Google Cast API na iOS.

Konfiguracja Xcode

iOS 14

  1. Dodaj do projektu pakiet SDK przesyłania treści na iOS w wersji 4.8.3

    Jeśli używasz CocoaPods, użyj polecenia pod update, aby dodać pakiet SDK 4.8.3 do projektu.

    W przeciwnym razie pobierz pakiet SDK ręcznie.

  2. Dodawanie grupy odbiorców NSBonjourServices do listy Info.plist

    W pliku Info.plist podaj wartość NSBonjourServices, aby umożliwić wykrywanie w sieci lokalnej w systemie iOS 14.

    Aby wykrywanie urządzeń działało prawidłowo, musisz dodać usługi _googlecast._tcp i _<your-app-id>._googlecast._tcp.

    Identyfikator aplikacji to identyfikator odbiorcy, który jest taki sam jak identyfikator zdefiniowany w Twoim GCKDiscoveryCriteria.

    Zaktualizuj definicję NSBonjourServices z tego przykładu i zastąp „ABCD1234” identyfikatorem aplikacji.

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. Dodaj NSLocalNetworkUsageDescription do Info.plist

    Zalecamy dostosowanie komunikatu wyświetlanego w prośbie dotyczącej sieci lokalnej przez dodanie do pliku Info.plist aplikacji (dla NSLocalNetworkUsageDescription) ciągu znaków uprawnień specyficznych dla aplikacji, np. w celu opisania usługi Cast discovery lub innych usług discovery, takich jak DIAL.

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

    Ta wiadomość będzie wyświetlana w ramach okna dostępu przez sieć lokalną na iOS, jak pokazano na mockupie.

    Obraz okna uprawnień dostępu do sieci lokalnej w Cast
  4. Ponowne opublikowanie aplikacji w Apple App Store

    Zalecamy też jak najszybsze ponowne opublikowanie aplikacji z wersją 4.8.3.

iOS 13

.

iOS 12

Upewnij się, że przełącznik Dostęp do informacji o Wi-Fi w sekcji Możliwości w ustawieniu docelowym jest ustawiony na „Wł.”.

Dodatkowo profil obsługi musi obsługiwać funkcję Access WiFi Information (Dostęp do informacji o Wi-Fi). Możesz je dodać w portalu Apple Developer.

Konfiguracja CocoaPods

Zalecaną metodą integracji Google Cast jest korzystanie z CocoaPods. Do integracji użyj CocoaPods google-cast-sdk.

Aby rozpocząć, skorzystaj z przewodnika dla początkujących.

Po skonfigurowaniu CocoaPods postępuj zgodnie z przewodnikiem po CocoaPods, aby utworzyć Podfile i przygotować projekt do użycia z Google Cast SDK.

Oto przykład dodawania pakietu CocoaPod google-cast-sdk do projektu 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

W projekcie należy określić zakres dla podów, aby zapobiec nieoczekiwanym zmianom, które mogą spowodować przerwanie działania aplikacji. Szczegółowe informacje znajdziesz w przewodniku po plikach pod.

W tym fragmencie kodu dozwolona jest wersja 4.8.3 oraz wersje aż do następnej głównej wersji (główna.podrzędna.poprawka):

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

Na przykład wartość „~> 1.6.7” obejmuje wszystkie wersje od 1.6.7 w łącznie z 2.0.0.

Konfiguracja ręczna

Poniższe instrukcje dotyczą dodawania pakietu iOS SDK Cast do projektu bez używania CocoaPods:

Pobrane

Po pobraniu odpowiedniej biblioteki poniżej wykonaj czynności konfiguracyjne, aby dodać framework do projektu.

Biblioteki pakietu SDK nadawcy Cast na iOS w wersji 4.8.3:

Statyczny Dynamiczny

Instrukcje konfiguracji

Aby zainstalować bibliotekę:

  1. Pobierz i rozpakuj odpowiedni pakiet SDK dla swojego projektu.
  2. Konfigurowanie dynamicznej biblioteki GoogleCastSDK:
  3. Przeciągnij rozpakowany plik .xcframework do głównego projektu w przeglądarce projektu Xcode (nie do projektu Pods, jeśli go masz). Zaznacz pole „W razie potrzeby skopiuj wszystkie elementy” i dodaj do wszystkich miejsc docelowych.
  4. W ustawieniach docelowych Xcode na karcie General wybierz Embed and Sign dla GoogleCast.xcframework.

Jeśli konfigurujesz bibliotekę statyczną, wykonaj te czynności oprócz poprzednich:

  1. Skonfiguruj bibliotekę Protobuf w wersji co najmniej v3.13.
    1. Jeśli Twój projekt korzysta z CocoaPods:
      1. Otwórz Podfile i usuń google-cast-sdk, jeśli jest obecny:
        pod 'google-cast-sdk'
      2. Dodaj bibliotekę Protobuf, jeśli jej nie ma:
        pod 'Protobuf', '3.13'
      3. Uruchom pod install w katalogu głównym projektu.
    2. Jeśli Twój projekt nie korzysta z CocoaPods:
      1. Usuń bieżącą wersję GoogleCastSDK, jeśli jest.
      2. Dodaj bibliotekę Protobuf w wersji 3.13 lub nowszej, postępując zgodnie z instrukcjami w repozytorium Protobuf na GitHubie.
  2. W projekcie Xcode dodaj flagi -ObjC -lc++ do Ustawień kompilacji > Inne flagi linkera.
  3. W rozpakowanym katalogu znajdź folder Resources i przeciągnij do projektu pliki GoogleCastCoreResources.bundle, GoogleCastUIResources.bundle i MaterialDialogs.bundle, umieszczając je obok pliku GoogleCast.xcframework, który został dodany wcześniej. Zaznacz opcję „Skopiuj wszystkie elementy w razie potrzeby” i dodaj do wszystkich docelów.

Konfiguracja Catalyst na Macu

W przypadku aplikacji obsługujących Mac Catalyst używaj dynamicznej biblioteki pakietu Cast SDK. Aby dodać framework do projektu, wykonaj proces ręcznej konfiguracji. Następnie wyklucz warunkowo pakiet SDK Cast z docelowego systemu Mac, zgodnie z opisem w dokumentacji Apple. Biblioteki statyczne są wstępnie kompilowane pod kątem architektury iOS, co powoduje błąd linkera podczas kompilowania pod kątem celu Mac.