Android 用 Play ゲームサービスのスタートガイド

Google Play ゲームサービスによる Android ゲーム開発へようこそ。

Play ゲームサービス SDK は、実績、リーダーボード、保存済みゲームなどの人気のゲーム機能をタブレットやモバイルゲームに簡単に統合できる、クロス プラットフォームの Google Play ゲームサービスを提供します。

このトレーニングでは、Android 用のサンプル ゲームアプリをインストールして、独自の Android ゲームをすぐに作成する方法について説明します。Type-a-Number チャレンジ サンプルアプリは、実績とリーダーボードをゲームに統合する方法を示しています。

始める前に

アプリを準備するには、以下のセクションに示す手順を完了します。

アプリの前提条件

アプリのビルドファイルで次の値が使用されていることを確認します。

  • minSdkVersion19 以上
  • compileSdkVersion28 以上

Google Play Console でゲームを設定する

Google Play Console では、各ゲーム用に Google Play Games サービスを管理し、ゲームの認可と認証のためのメタデータを構成します。詳細については、Google Play Games サービスのセットアップをご覧ください。

アプリを構成する

プロジェクト レベルの build.gradle ファイルで、buildscript セクションと allprojects セクションの両方に Maven のリポジトリMaven セントラル リポジトリを含めます。

  buildscript {
    repositories {
      google()
      mavenCentral()
    }
  }

  allprojects {
    repositories {
      google()
      mavenCentral()
    }
  }

Play ゲーム SDK の Google Play 開発者サービスの依存関係をモジュールの Gradle ビルドファイル(通常は app/build.gradle)に追加します。

  dependencies {
    implementation 'com.google.android.gms:play-services-games:23.1.0'
  }

サンプルアプリのガイド

このトレーニングでは、Android 用のゲームゲームのサンプルをインストールして、独自の Android ゲームをすぐに作成できるようにします。Type-a-Number チャレンジ サンプルアプリは、実績とリーダーボードをゲームに統合する方法を示しています。

ステップ 1: サンプルアプリをダウンロードする

このデベロッパー ガイドでは、Type-a-Number チャレンジ Android アプリをダウンロードする必要があります。

Android Studio でサンプル アプリケーションをダウンロードして設定するには:

  1. サンプルのダウンロード ページから Android のサンプルをダウンロードします。
  2. android-basic-samples プロジェクトをインポートします。このプロジェクトには、TypeANumber と他の Android ゲームサンプルが含まれています。Android Studio でこれを行うには:
    1. [File] > [Import Project] をクリックします。
    2. 開発マシンで android-basic-samples をダウンロードしたディレクトリを参照します。ファイル android-basic-samples/build.gradle を選択して、[OK] をクリックします。
  3. TypeANumber モジュールで、AndroidManifest.xml を開き、パッケージ名を com.google.example.games.tanc から独自のパッケージ名に変更します。新しいパッケージ名を com.googlecom.examplecom.android で始めることはできません。

ステップ 2: Google Play Console でゲームをセットアップする

Google Play Console では、ゲームの Google Play ゲームサービスを管理し、ゲームの認可と認証のためのメタデータを構成します。

Google Play Console でサンプルゲームを設定するには:

  1. ウェブブラウザで Google Play Console に移動し、ログインします。これまで Google Play Console に登録していない場合は、登録を求めるメッセージが表示されます。
  2. Google Play Console にゲームを追加する手順を実施します。
    1. アプリで Google API を使用するかどうかを尋ねられたら、[ゲームで Google API をまだ使用していません] を選択します。
    2. このデベロッパー ガイドでは、ゲームに独自の詳細情報を入力できます。便宜上、[ダウンロード] ページにあるプレースホルダ アイコンとスクリーンショットを使用できます。
  3. Android アプリの OAuth 2.0 クライアント ID を生成する手順を行います。
    1. Android アプリをリンクする際は、以前にサンプル パッケージの名前を変更したときに使用した正確なパッケージ名を指定してください。
    2. Android Studio の [Generate Signed APK] ウィザードを使用して、新しいキーストアと署名済み証明書をまだ生成していない場合は生成できます。Generate Signed APK Wizard の実行方法については、Android Studio でアプリに署名するをご覧ください。
  4. 後で参照するために、以下の情報を必ず記録してください。
    1. アプリケーション ID: クライアント ID の先頭にある数字(通常は 12 桁以上)のみで構成される文字列。
    2. 署名証明書: API アクセスの設定時に使用した証明書(SHA1 フィンガープリントが指定された証明書)をメモします。アプリのテスト時やリリース時には、同じ証明書を使用してアプリに署名する必要があります。
  5. Type-a-Number チャレンジの実績を構成します。
    1. Google Play Console で [実績] タブを選択します。
    2. 次の実績例を追加します。
      名前 説明 特記事項
      プライム 素数のスコアを取得します。 なし
      謙虚 スコア 0 をリクエストします。 なし
      大金をゲットしよう どちらのモードでも 9999 のスコアをリクエストします。 なし
      OMG U R TEH UBER LEET! スコア 1337 点を獲得します。 実績を非公開にします。
      退屈だった ゲームを 10 回プレイします。 10 ステップの達成という段階的に達成する実績にします。
      本当に退屈だった ゲームを 100 回プレイします。 100 ステップで達成する増分実績として表示しましょう。
    3. 作成した各実績の ID(英数字の長い文字列)を記録します。
    4. ゲームに適した実績を設定します。詳細については、実績の背景にあるコンセプトAndroid に実績を実装する方法をご覧ください。
  6. Type-a-Number チャレンジのリーダーボードを構成します。
    1. Google Play Console で [リーダーボード] タブを選択します。
    2. 2 つのサンプル リーダーボードを追加します。1 つは「Easy High Scores」、もう 1 つは「Hard High Scores」です。どちらのリーダーボードにも、小数点以下 0 の整数スコア形式と、順序が「大きいほど上位」の形式を使用する必要があります。
    3. 作成した各リーダーボードの ID(長い英数字の文字列)を記録します。
    4. ゲームに適したリーダーボードを構成します。詳細については、リーダーボードの背後にあるコンセプトAndroid でリーダーボードを実装する方法をご覧ください。
  7. ゲームのテスト アカウントを追加します。 この手順は、Google Play Console でまだ公開されていないアプリにのみ必要です。アプリの公開前にログインできるのは、Google Play Console に表示されているテスト アカウントのみです。ただし、アプリケーションが公開されると、すべてのユーザーがログインできるようになります。

ステップ 3: コードを変更する

ゲームを実行するには、Android プロジェクトのリソースとしてアプリケーション ID を構成する必要があります。AndroidManifest.xml にゲーム メタデータを追加する必要があります。

  1. res/values/ids.xml を開き、プレースホルダ ID を置き換えます。Android ゲームをゼロから作成する場合は、まずこのファイルを作成する必要があります。
    1. app_id リソースでアプリケーション ID を指定します。
    2. 先ほど作成した各実績 ID を、対応する achievement_* リソースに指定します。
    3. 対応する leaderboard_* リソースに、先ほど作成した各リーダーボード ID を指定します。
  2. AndroidManifest.xml を開き、<manifest> 要素の package 属性にパッケージ名を入力します。ゼロから Android ゲームを作成する場合は、<application> 要素内に次のコードも追加してください。
    <meta-data android:name="com.google.android.gms.games.APP_ID"
        android:value="@string/app_id" />
    <meta-data android:name="com.google.android.gms.version"
       android:value="@integer/google_play_services_version"/>
    

ステップ 4: ゲームをテストする

Google Play ゲームサービスでゲームが正しく機能することを確認するには、Google Play に公開する前にアプリをテストします。

物理テストデバイスでゲームを実行するには:

  1. アプリのログインに使用しているテスト アカウント(ステップ 2 を参照)が設定されていることを確認します。
  2. APK をエクスポートし、Google Play Console でプロジェクトを設定したときに使用したのと同じ証明書で署名します。Android Studio で署名付き APK をエクスポートするには、[Build] > [Generate Signed APK] をクリックします。
  3. adb ツールを使用して、実際のテストデバイスに署名付き APK をインストールします。アプリをインストールする方法については、デバイス上での実行をご覧ください。