キャスト フレームワークは iOS 12 以降をサポートし、静的フレームワークと動的フレームワークの両方を備えています。
すべてのクラスとメソッドの説明については、Google Cast iOS API リファレンスをご覧ください。
なお、新しい世代のキャスト デバイスは iOS のゲストモードをサポートしていますが、旧世代のデバイスはサポートしていません。詳しくは、ゲストモード - サポートされているキャスト デバイスをご覧ください。
Xcode の設定
iOS 14
-
Cast iOS SDK 4.7.0 をプロジェクトに追加する
CocoaPods を使用している場合は、
pod update
を使用して 4.7.0 SDK をプロジェクトに追加します。それ以外の場合は、 SDK を手動で取得します。
-
NSBonjourServices
をInfo.plist
に追加するローカル ネットワークの検出が iOS 14 で成功するように、
Info.plist
にNSBonjourServices
を指定します。デバイスの検出を正しく動作させるには、
_googlecast._tcp
と_<your-app-id>._googlecast._tcp
の両方をサービスとして追加する必要があります。appID は、
GCKDiscoveryCriteria
で定義されているものと同じ ID です。次の
NSBonjourServices
定義の例を更新して、「ABCD1234」を appID に置き換えます。 -
Add
NSLocalNetworkUsageDescription
to yourInfo.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 theNSLocalNetworkUsageDescription
such as to describe Cast discovery and other discovery services, like DIAL.This message will appear as part of the iOS Local Network Access dialog as shown in the mock.
-
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
google-cast-sdk-no-bluetooth
CocoaPod を Podfile
に追加する方法の例を次に示します。
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
podfile ガイドで説明されているように、プロジェクトでは、予期しない破損を防ぐために Pod の範囲を指定する必要があります。
このスニペットでは、バージョン 4.7.0 と次のメジャー バージョン(major.minor.patch)までのバージョンが許可されています。
pod 'google-cast-sdk', '~> 4.7.0'
たとえば、「~> 1.6.7」には、1.6.7 からバージョン 2.0.0 までのすべてのバージョンが含まれます。
手動セットアップ
CocoaPods を使用せずにプロジェクトに Cast iOS SDK を追加する手順は次のとおりです。
ダウンロード
以下の適切なライブラリをダウンロードしたら、設定手順に沿ってフレームワークをプロジェクトに追加します。XCFramework の設定要件は、従来のユニバーサル フレームワークと同じです。
アプリがこの機能を必要としない場合や、iOS 13 で導入された Bluetooth® 権限が必要ない場合に、ゲストモードのないライブラリが用意されています。詳細については、iOS 13 の変更点に関するドキュメントをご覧ください。
ユニバーサル フレームワーク
Cast Sender SDK 4.7.0 ライブラリ:
XCFramework(ベータ版)
バージョン 4.7.1 以降の Cast iOS SDK では XCFrameworks がサポートされており、Apple M1 コンピュータでの開発と、M1 iOS シミュレータを使用したデバッグが可能です。
これらのライブラリは現在ベータ版です。問題が発生した場合は、Cast SDK Issue Tracker に報告してください。
Cast iOS Sender SDK XCFramework 4.7.1 ライブラリ:
ゲストモードを使用した静的 XCFramework ゲストモードなしの静的 XCFramework
ゲストモードを使用したダイナミック XCFramework ゲストモードなしのダイナミック XCFramework
設定の手順
静的ライブラリの 1 つをインストールするには:
- プロジェクトに適した静的 SDK をダウンロードして、解凍します。
- 最小バージョン v3.13 で Protobuf ライブラリを設定します。
- プロジェクトで CocoaPods を使用する場合:
-
Podfile
を開き、google-cast-sdk
が存在する場合は削除します。pod 'google-cast-sdk'
-
Protobuf
ライブラリが存在しない場合は追加します。pod 'Protobuf', '3.13'
-
プロジェクトのルートフォルダで
pod install
を実行します。 - プロジェクトで CocoaPods を使用していない場合:
-
GoogleCastSDK
の現在のバージョンが存在する場合は削除します。 - Protobuf GitHub リポジトリの手順に沿って、Protobuf ライブラリ v3.13 以降を追加します。
-
解凍した
.framework
または.xcframework
を Xcode プロジェクト ナビゲータのメイン プロジェクトにドラッグします(ポッド プロジェクトが存在しない場合は Pod プロジェクトにドラッグします)。[必要に応じてすべてのアイテムをコピー] をオンにして、すべてのターゲットに追加します。 -
Xcode プロジェクトで、フラグ
-ObjC -lc++
を [Build Settings] > [Other Linker Flags] に追加します。 -
プロジェクトで
GoogleCast.framework
またはGoogleCast.xcframework
を右クリックし、[Find In Finder] を選択します。 -
以前に追加した
GoogleCast.framework
またはGoogleCast.xcframework
の横にあるGoogleCastCoreResources.bundle
とGoogleCastUIResources.bundle
をプロジェクトにドラッグし、[必要に応じてすべてのアイテムをコピー] をオンにして、すべてのターゲットに追加します。
動的ライブラリのいずれかをインストールするには:
- プロジェクトに適した動的 SDK をダウンロードして解凍します。
- 動的 GoogleCastSDK ライブラリをセットアップします。
- プロジェクトで CocoaPods を使用する場合:
-
Podfile
を開き、次のものを削除します。pod 'google-cast-sdk'
-
プロジェクトのルートフォルダで
pod install
を実行します。 - プロジェクトで CocoaPods を使用していない場合は、現在の Google Cast ライブラリを削除します。
-
解凍した
.framework
または.xcframework
を Xcode プロジェクト ナビゲータのメイン プロジェクトにドラッグします(ポッド プロジェクトが存在しない場合は Pod プロジェクトにドラッグします)。[必要に応じてすべてのアイテムをコピー] をオンにして、すべてのターゲットに追加します。 -
Xcode ターゲットの [
General
] タブで、[GoogleCast.framework
] または [GoogleCast.xcframework
] に [Embed and Sign
] を選択します。
Mac Catalyst の設定
Mac Catalyst をサポートするアプリでは、Cast SDK の動的ライブラリを使用します。手動設定プロセスに沿って、フレームワークをプロジェクトに追加します。Apple のドキュメントに記載されているように、Mac SDK のターゲットから条件付きで Cast SDK を除外します。静的ライブラリは iOS アーキテクチャ用にプリコンパイルされているため、Mac ターゲットに対してビルドする際にリンカーエラーが発生します。
アプリを App Store に公開する
アプリを App Store に公開する前に、シェル スクリプト strip_unused_archs.sh
を実行して、未使用のアーキテクチャを App Bundle から削除する必要があります。このスクリプトは iOS 用 Cast SDK に含まれています。