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 をアプリで使用できるようにするには:

  1. アプリケーション モジュール ディレクトリ内の build.gradle ファイルを開きます。

    注: Android Studio プロジェクトには、トップレベルの build.gradle ファイルと、モジュールごとに build.gradle ファイルが含まれています。必ず、アプリケーション モジュールのファイルを編集してください。Gradle の詳細については、 Gradle を使用してプロジェクトをビルドするをご覧ください。

  2. google() がリストされた repositories に含まれていることを確認します。
    repositories {
        google()
    }
  3. 最新バージョンの play-servicesdependencies の下に新しいビルドルールを追加します。次に例を示します。
    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.0.0'
        }

    Google Play 開発者サービスが更新されるたびに、このバージョン番号を更新してください。

    注: アプリ内のメソッド参照数が 65, 000 の上限を超えると、アプリのコンパイルが失敗することがあります。アプリをコンパイルするときに、アプリで使用する Google Play 開発者サービスの API をすべて指定するのではなく、特定の API のみを指定することで、この問題を軽減できる場合があります。方法については、API を実行可能ファイルに選択的にコンパイルするをご覧ください。

  4. 変更を保存し、ツールバーの Sync Project with Gradle Files をクリックします。

その他の IDE

Google Play 開発者サービスの API をアプリで使用できるようにするには:

  1. <android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/ にあるライブラリ プロジェクトを、Android アプリ プロジェクトを管理する場所にコピーします。
  2. アプリ プロジェクトで、Google Play 開発者サービスのライブラリ プロジェクトを参照します。詳細については、 コマンドラインでライブラリ プロジェクトを参照するをご覧ください。

    注: 開発ワークスペースにコピーしたライブラリのコピーを参照する必要があります。Android SDK ディレクトリからライブラリを直接参照しないでください。

  3. 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