iOS용 Cast 애플리케이션 프레임워크 (CAF)로 개발하기 위한 설정

Cast 프레임워크는 iOS 14 이상을 지원하며 정적 프레임워크와 동적 프레임워크로 제공됩니다.

모든 클래스 및 메서드에 관한 설명은 Google Cast iOS API 참조를 참고하세요.

Xcode 설정

iOS 14

  1. 프로젝트에 Cast iOS SDK 4.8.3 추가

    CocoaPods를 사용하는 경우 pod update를 사용하여 4.8.3 SDK를 프로젝트에 추가합니다.

    그렇지 않으면 SDK를 수동으로 가져옵니다.

  2. Info.plistNSBonjourServices 추가하기

    Info.plist에서 NSBonjourServices를 지정하여 iOS 14에서 로컬 네트워크 검색이 성공하도록 합니다.

    기기 검색이 제대로 작동하려면 _googlecast._tcp_<your-app-id>._googlecast._tcp를 모두 서비스로 추가해야 합니다.

    appID는 receiverID이며 GCKDiscoveryCriteria에 정의된 ID와 동일합니다.

    다음 예시 NSBonjourServices 정의를 업데이트하고 'ABCD1234'를 appID로 바꿉니다.

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. Info.plistNSLocalNetworkUsageDescription 추가

    Cast 검색 및 DIAL과 같은 기타 검색 서비스를 설명하는 등 NSLocalNetworkUsageDescription의 앱별 권한 문자열을 앱의 Info.plist 파일에 추가하여 로컬 네트워크 메시지를 맞춤설정하는 것이 좋습니다.

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

    이 메시지는 예시와 같이 iOS 로컬 네트워크 액세스 대화상자의 일부로 표시됩니다.

    전송 로컬 네트워크 액세스 권한 대화상자 이미지
  4. Apple App Store에 앱을 다시 출시

    최대한 빨리 4.8.3을 사용하여 앱을 다시 출시하는 것이 좋습니다.

iOS 13

iOS 12

타겟의 기능 섹션에 있는 Wi-Fi 정보 액세스 스위치가 '사용'으로 설정되어 있는지 확인합니다.

또한 프로비저닝 프로필은 Wi-Fi 정보 액세스 기능을 지원해야 합니다. Apple Developer Portal에서 추가할 수 있습니다.

CocoaPods 설정

Google Cast를 통합하는 권장 방법은 CocoaPods를 사용하는 것입니다. 통합의 경우 google-cast-sdk CocoaPods를 사용하세요.

시작하려면 시작 가이드를 따르세요.

CocoaPods가 설정되면 CocoaPods 사용 가이드에 따라 Podfile를 만들고 Google Cast SDK와 함께 프로젝트를 사용할 준비를 합니다.

다음은 Podfilegoogle-cast-sdk CocoaPod를 추가하는 방법의 예입니다.

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

프로젝트의 경우 podfile 가이드에 설명된 대로 예기치 않은 중단 변경사항을 방지하기 위해 pod의 범위를 지정해야 합니다.

이 스니펫에서는 버전 4.8.3 및 다음 메인 버전 (major.minor.patch)까지의 버전이 허용됩니다.

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

예를 들어 '~> 1.6.7'에는 1.6.7부터 2.0.0 미만의 모든 버전이 포함됩니다.

수동 설정

다음 안내는 CocoaPods를 사용하지 않고 프로젝트에 Cast iOS SDK를 추가하는 방법을 설명합니다.

다운로드

아래에서 적절한 라이브러리를 다운로드한 후 설정 단계에 따라 프레임워크를 프로젝트에 추가합니다.

Cast iOS Sender SDK 4.8.3 라이브러리:

정적 동적

설정 단계

라이브러리를 설치하려면 다음 단계를 따르세요.

  1. 프로젝트에 적합한 SDK를 다운로드하여 압축을 풉니다.
  2. 동적 GoogleCastSDK 라이브러리를 설정합니다.
  3. 압축을 푼 .xcframework를 Xcode 프로젝트 탐색기의 기본 프로젝트로 드래그합니다 (Pods 프로젝트가 있는 경우 Pods 프로젝트가 아닌 기본 프로젝트로 드래그). '필요한 경우 모든 항목 복사'를 선택하고 모든 타겟에 추가합니다.
  4. Xcode 타겟의 General 탭에서 GoogleCast.xcframeworkEmbed and Sign를 선택합니다.

정적 라이브러리를 설정하는 경우 이전 단계 외에도 다음 단계를 따르세요.

  1. 최소 버전 v3.13으로 Protobuf 라이브러리를 설정합니다.
    1. 프로젝트에서 CocoaPods를 사용하는 경우:
      1. Podfile를 열고 google-cast-sdk가 있는 경우 삭제합니다.
        pod 'google-cast-sdk'
      2. Protobuf 라이브러리가 없는 경우 추가합니다.
        pod 'Protobuf', '3.13'
      3. 프로젝트의 루트 폴더에서 pod install를 실행합니다.
    2. 프로젝트에서 CocoaPods를 사용하지 않는 경우:
      1. GoogleCastSDK의 현재 버전이 있는 경우 삭제합니다.
      2. Protobuf GitHub 저장소에 있는 안내에 따라 Protobuf 라이브러리 v3.13 이상을 추가합니다.
  2. Xcode 프로젝트에서 Build Settings(빌드 설정) > Other Linker Flags(기타 링커 플래그)에 -ObjC -lc++ 플래그를 추가합니다.
  3. 압축을 푼 디렉터리에서 'Resources' 폴더를 찾아 GoogleCastCoreResources.bundle, GoogleCastUIResources.bundle, MaterialDialogs.bundle를 이전에 추가한 GoogleCast.xcframework 옆에 있는 프로젝트로 드래그합니다. '필요한 경우 모든 항목 복사'를 선택하고 모든 타겟에 추가합니다.

Mac Catalyst 설정

Mac Catalyst를 지원하는 앱의 경우 Cast SDK의 동적 라이브러리를 사용하세요. 수동 설정 프로세스에 따라 프레임워크를 프로젝트에 추가합니다. 그런 다음 Apple 문서에 언급된 대로 Mac 타겟에서 Cast SDK를 조건부로 제외합니다. 정적 라이브러리는 iOS 아키텍처용으로 사전 컴파일되므로 Mac 타겟을 대상으로 빌드할 때 링커 오류가 발생합니다.