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. リストされた repositoriesgoogle() が含まれていることを確認します。
    repositories {
        google()
    }
    
  3. 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:21.4.0'
        }
    

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

    注: アプリ内のメソッド参照の数が 65, 000 の上限を超えると、アプリのコンパイルが失敗する可能性があります。アプリをコンパイルする際に、すべての Google Play 開発者サービス API ではなく、アプリで使用する特定の Google Play 開発者サービス 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