Android 用 Cast Application Framework(CAF)を使用した開発のセットアップ
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
前提条件
Android 向け Google Cast SDK は Google Play 開発者サービス SDK の一部であるため、別途ダウンロードする必要はありません。
注: Google Play 開発者サービスでは、広告の作成、アナリティクスの収集、ユーザーの認証、地図の統合など、さまざまな API を利用できます。詳細については、Google Play 開発者サービスの概要をご覧ください。アップデートがすべてのユーザーにすぐに届かない可能性があるため、ユーザーのデバイスに正しい Google Play 開発者サービス APK がインストールされていることを確認することが重要です。
プロジェクトに Google Play 開発者サービスを追加する
以下の開発環境を選択し、記載されている手順に沿って Google Play 開発者サービスをプロジェクトに追加します。
Android Studio
Google Play 開発者サービスの API をアプリで使用できるようにするには:
- アプリケーション モジュール ディレクトリ内の
build.gradle
ファイルを開きます。注: Android Studio プロジェクトには、トップレベルの build.gradle
ファイルと、モジュールごとに build.gradle
ファイルが含まれています。必ず、アプリケーション モジュールのファイルを編集してください。Gradle の詳細については、
Gradle を使用してプロジェクトをビルドするをご覧ください。
google()
がリストされた repositories
に含まれていることを確認します。repositories {
google()
}
- 最新バージョンの
play-services
の dependencies
の下に新しいビルドルールを追加します。次に例を示します。
apply plugin: 'com.android.application'
...
dependencies {
implementation 'androidx.appcompat:appcompat:1.3.1'
implementation 'androidx.mediarouter:mediarouter:1.2.5'
implementation 'com.google.android.gms:play-services-cast-framework:22.1.0'
}
Google Play 開発者サービスが更新されるたびに、このバージョン番号を更新してください。
注: アプリ内のメソッド参照数が 65, 000 の上限を超えると、アプリがコンパイルされない可能性があります。アプリをコンパイルするときに、アプリで使用する Google Play 開発者サービスの API をすべて指定するのではなく、特定の API のみを指定することで、この問題を軽減できる場合があります。方法については、API を選択的にコンパイルして実行可能ファイルに含めるをご覧ください。
- 変更を保存し、ツールバーの [Sync Project with Gradle Files] をクリックします。
その他の IDE
Google Play 開発者サービスの API をアプリで使用できるようにするには:
<android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/
にあるライブラリ プロジェクトを、Android アプリ プロジェクトを管理する場所にコピーします。
- アプリ プロジェクトで、Google Play 開発者サービスのライブラリ プロジェクトを参照します。詳細については、
コマンドラインでライブラリ プロジェクトを参照するをご覧ください。
注: 開発ワークスペースにコピーしたライブラリのコピーを参照する必要があります。Android SDK ディレクトリからライブラリを直接参照しないでください。
- Google Play 開発者サービス ライブラリをアプリ プロジェクトの依存関係として追加したら、アプリのマニフェスト ファイルを開き、
<application>
要素の子として次のタグを追加します。<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
ライブラリ プロジェクトを参照するようにプロジェクトを設定したら、
Google Play 開発者サービス API を使用して機能の開発を開始できます。
Proguard の例外を作成する
ProGuard が必要なクラスを削除しないようにするには、/proguard-project.txt
ファイルに次の行を追加します。
-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {
public static final *** NULL;
}
-keepnames class * implements android.os.Parcelable
-keepclassmembers class * implements android.os.Parcelable {
public static final *** CREATOR;
}
-keep @interface android.support.annotation.Keep
-keep @android.support.annotation.Keep class *
-keepclasseswithmembers class * {
@android.support.annotation.Keep <fields>;
}
-keepclasseswithmembers class * {
@android.support.annotation.Keep <methods>;
}
-keep @interface com.google.android.gms.common.annotation.KeepName
-keepnames @com.google.android.gms.common.annotation.KeepName class *
-keepclassmembernames class * {
@com.google.android.gms.common.annotation.KeepName *;
}
-keep @interface com.google.android.gms.common.util.DynamiteApi
-keep public @com.google.android.gms.common.util.DynamiteApi class * {
public <fields>;
public <methods>;
}
-dontwarn android.security.NetworkSecurityPolicy
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-08-08 UTC。
[null,null,["最終更新日 2025-08-08 UTC。"],[[["\u003cp\u003eEnsure you have the latest Android SDK, appcompat, mediarouter AndroidX Libraries, and Google Cast SDK installed via the Android SDK Manager.\u003c/p\u003e\n"],["\u003cp\u003eAdd Google Play Services to your project by modifying your \u003ccode\u003ebuild.gradle\u003c/code\u003e file (Android Studio) or referencing the library project and updating the manifest (Other IDEs).\u003c/p\u003e\n"],["\u003cp\u003eIf using ProGuard, include specific exceptions in your configuration file to prevent the removal of necessary Google Play services classes.\u003c/p\u003e\n"]]],[],null,["Prerequisites\n\n- Install the latest version of the Android SDK using the [Android SDK\n Manager](//developer.android.com/tools/help/sdk-manager.html).\n- Install the latest version of the appcompat and mediarouter [AndroidX\n Libraries](//developer.android.com/jetpack/androidx) through the [Android SDK\n Manager](//developer.android.com/tools/help/sdk-manager.html).\n- Install the latest [Cast SDK in Google Play\n services](//developer.android.com/google/play-services/setup.html) through the [Android SDK\n Manager](//developer.android.com/tools/help/sdk-manager.html).\n\nThe Google Cast SDK for Android is part of the Google Play services SDK and does\nnot need to be downloaded separately.\n\n**Note** : Google Play services gives you access to a [range of\nAPIs](/android) for building ads, collecting analytics, authenticating users,\nintegrating maps, and much more. For more information, see [Overview of Google Play\nServices](/android/guides/overview).\nIt is important for you to [ensure that the correct Google Play services APK is\ninstalled](/android/guides/setup#ensure_devices_have_the_google_play_services_apk)\non a user's device since updates might not reach all users immediately.\n| **Note:** Since the libraries contribute resources, you cannot simply satisfy the dependencies by including their JAR files; instead you need to [import them as\n| library\n| projects](//developer.android.com/tools/support-library/setup.html#libs-with-res) for your IDE.\n\nAdd Google Play Services to your project\n\n\nSelect your development environment below and add Google Play services to your project by\nfollowing the steps provided. \n\nAndroid Studio\n\nTo make the Google Play services APIs available to your app:\n\n1. Open the `build.gradle` file inside your application module directory.\n\n **Note:** Android Studio projects contain a top-level\n `build.gradle` file and a `build.gradle` file for each module. Be sure to\n edit the file for your application module. See\n [Building Your Project with Gradle](//developer.android.com/sdk/installing/studio-build.html) for more information about Gradle.\n2. Verify that `google()` is included in the listed `repositories`. \n\n repositories {\n google()\n }\n\n3. Add a new build rule under `dependencies` for the latest version of `play-services`. For example: \n\n ```carbon\n apply plugin: 'com.android.application'\n ...\n\n dependencies {\n implementation 'androidx.appcompat:appcompat:1.3.1'\n implementation 'androidx.mediarouter:mediarouter:1.2.5'\n implementation 'com.google.android.gms:play-services-cast-framework:22.1.0'\n }\n ```\n\n Be sure you update this version number each time Google Play services is updated.\n\n **Note:** If the number of method references in your app exceeds the\n [65K limit](//developer.android.com/tools/building/multidex.html), your app may fail to\n compile. You may be able to mitigate this problem when compiling your app by specifying only\n the specific Google Play services APIs your app uses, instead of all of them. For information\n on how to do this, see\n [Selectively compiling APIs into your executable](/android/guides/setup#split).\n4. Save the changes and click **Sync Project with Gradle Files** in the toolbar.\n\nOther IDE\n\nTo make the Google Play services APIs available to your app:\n\n1. Copy the library project at `\u003candroid-sdk\u003e/extras/google/google_play_services/libproject/google-play-services_lib/` to the location where you maintain your Android app projects.\n2. In your app project, reference the Google Play services library project. See [Referencing a Library Project on the Command Line](//developer.android.com/tools/projects/projects-cmdline.html#ReferencingLibraryProject) for more information on how to do this.\n\n **Note:** You should be referencing a copy of the library that you\n copied to your development workspace---you should not reference the library directly from the\n Android SDK directory.\n3. After you've added the Google Play services library as a dependency for your app project, open your app's manifest file and add the following tag as a child of the [`\u003capplication\u003e`](//developer.android.com/guide/topics/manifest/application-element.html) element: \n\n ```transact-sql\n \u003cmeta-data android:name=\"com.google.android.gms.version\"\n android:value=\"@integer/google_play_services_version\" /\u003e\n ```\n\nOnce you've set up your project to reference the library project, you can begin developing\nfeatures with the\n[Google Play services APIs](/android/reference/com/google/android/gms/package-summary).\n\nCreate a Proguard exception\n\nTo prevent\n[ProGuard](//developer.android.com/tools/help/proguard.html) from stripping away\nrequired classes, add the following lines in the\n/proguard-project.txt file: \n\n```carbon\n-keep public class com.google.android.gms.common.internal.safeparcel.SafeParcelable {\n public static final *** NULL;\n}\n\n-keepnames class * implements android.os.Parcelable\n-keepclassmembers class * implements android.os.Parcelable {\n public static final *** CREATOR;\n}\n\n-keep @interface android.support.annotation.Keep\n-keep @android.support.annotation.Keep class *\n-keepclasseswithmembers class * {\n @android.support.annotation.Keep \u003cfields\u003e;\n}\n-keepclasseswithmembers class * {\n @android.support.annotation.Keep \u003cmethods\u003e;\n}\n\n-keep @interface com.google.android.gms.common.annotation.KeepName\n-keepnames @com.google.android.gms.common.annotation.KeepName class *\n-keepclassmembernames class * {\n @com.google.android.gms.common.annotation.KeepName *;\n}\n\n-keep @interface com.google.android.gms.common.util.DynamiteApi\n-keep public @com.google.android.gms.common.util.DynamiteApi class * {\n public \u003cfields\u003e;\n public \u003cmethods\u003e;\n}\n\n-dontwarn android.security.NetworkSecurityPolicy\n```"]]