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. Dodawanie do projektu pakietu iOS SDK 4.8.3 do przesyłania treści

    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 umożliwić prawidłowe wykrywanie urządzeń, 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 o dostęp do sieci lokalnej. W tym celu dodaj do pliku Info.plist aplikacji (NSLocalNetworkUsageDescription) odpowiedni ciąg znaków uprawnień, np. opisujący usługę Cast discovery lub inne usługi discovery, takie 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 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 użycie CocoaPods. Do integracji użyj CocoaPods google-cast-sdk.

Aby rozpocząć, postępuj zgodnie z przewodnikiem 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 wersji głównej (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 sekwencję konfiguracji, 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 wyboru „W razie potrzeby skopiuj wszystkie elementy” i dodaj do wszystkich docelów.
  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, postępuj zgodnie z instrukcjami konfiguracji ręcznej. Następnie wyklucz pakiet SDK Cast z docelnika Mac, jak opisano w dokumentacji Apple. Biblioteki statyczne są wstępnie kompilowane pod kątem architektury iOS, co powoduje błąd linkera podczas kompilowania na potrzeby wersji na Mac.