Android上で C++用の Playゲームサービスを始める



  • この記事は、Google Playゲームサービスに関する記事を和訳したものです。
  • 原文: Get Started with Play Games Services for C++ on Android
  • 元記事のライセンスは CC-BYで、この和訳記事のライセンスは CC-BYです。
  • 自己責任でご利用ください。
  • 和訳した時期は 2019年7月ころです。

始める前に

この開発者ガイドは、Google Playゲームサービス APIを使用する Android上の C++のゲームを、コンパイルし実行する方法を示しています。 始める前に、次の要件をダウンロードし、構成します:

この開発者ガイドは Android Native Development Kit(NDK)を使用します。 もし NDKに慣れていなければ、続ける前に NDK documentation and samplesを参照してください。

Step 1: あなたの環境をセットアップする

  1. Android SDKと Android NDKをダウンロードし、それらをあなたのマシンに展開します。 あなたの環境にて、SDK_ROOTをあなたの Android SDKのフォルダの位置に、NDK_ROOTをあなたの Android NDKのフォルダの位置にセットします。
  2. C++ sample gamesをダウンロードします。 この開発者ガイドは、あなたのマシン上のサンプルの位置を SAMPLES_DIRとして参照します。
  3. Google Playゲームサービス C++ SDKをダウンロードします。 あなたの開発マシン上に SDKを展開します。 あなたの環境にて、変数 NDK_MODULE_PATHgpg-cpp-sdkディレクトリの上のディレクトリを指すようにセットします。 次のディレクトリ構造を持っている必要があります:
    NDK_MODULE_PATH/
      gpg-cpp-sdk/
  4. Eclipseを開きます。 もしまだそうしていなければ、Preferences > Android > NDKをクリックすることによって、NDKをインストールした場所を Eclipseに伝えます。
  5. あなたの Eclipseのワークスペースに Google Playサービスライブラリプロジェクトをインポートします。

    1. Eclipseにて File > Import > Android > Existing Android Code into Workspace をクリックします。
    2. SDK_ROOT/extras/google/google_play_services/libproject/google-play-services_lib を選択します、SDK_ROOTはあなたの Android SDKの位置です。
    3. Finishをクリックします。
  6. あなたの Eclipseのワークスペースに最もミニマルなサンプルプロジェクトをインポートします。

    1. Eclipseにて File > Import > Android > Existing Android Code into Workspace をクリックします。
    2. SAMPLES_DIR/samples-android/minimalistを選択します。
    3. Finishをクリックします。
  7. MinimalistActivityプロジェクトを右クリックし、Propertiesをクリックします。 Androidの下にある Libraryセクションまでスクロールし、google-play-services_lib projectが正しく参照されていることを確認してください。 もしそうでなければ、参照を削除し、あなたのワークスペースから再びそれを追加します。

Eclipseは、あなたのプロジェクトの Javaと Androidのソースを自動的にコンパイルするでしょう; しかしながら、jniフォルダにあるネイティブコードは、個別にコンパイルされる必要があります。 これを手動で行うには、jniフォルダに移動し、ndk-buildを実行します。 jniフォルダの内側に何らかの変更をした後、これを行うことを忘れないでください。

あなたのプロジェクトは、今、コンパイルする必要がありますが、それはまだ動作しないでしょう。 まず、Google Play Consoleにてあなたのゲームを構成しなければなりません。

Step 2: Google Play Consoleにてゲームをセットアップする

Google Play Consoleにてあなたのゲーム用のエントリを作成します。 これはあなたのアプリケーション用のゲームサービスを有効にし、もしまだそれを持っていなければ、OAuth 2.0クライアント IDを作成します。

  1. Google Playゲームサービスをセットアップするに説明された手順に従って、あなたのゲーム用のエントリを作成します。
  2. AndroidManifest.xmlにて、<manifest>タグの package属性を、Google Play Consoleをセットアップしたときに選択したパッケージ名に変更します。 この変更をした後、プロジェクト全体で幾つかの参照を修正しなければならないかもしれません(特に、生成された Rクラス)。
  3. res/values/ids.xmlを開き、あなたのアプリ IDをそこに配置します。 アプリ IDはクライアント IDと同じではないことに注意してください; それは、Google Play Consoleの Game Detailsページ内のあなたのゲーム名のそばにある数字です。

Step 3: サンプルを実行する

サンプルを実行するために、物理的な Android端末あるいは Google Playサービスがインストールされたエミュレータが必要になるでしょう:

  1. ネイティブコードをコンパイルするために ndk-buildを実行します。
  2. Eclipseにて Run > Run As > Android Applicationをクリックし、あなたの端末上でサンプルを実行します。
  3. サンプルが開いたら、画面上の任意の場所をタップします。 Google Playゲームのロゴが現れるのを見るはずです。 もしあなたのアプリを正常に構成したならば、サインインするよう促されるでしょう。

オプション: Eclipseを用いて自動的にビルドする

次の手順は、jniフォルダ内のファイルを変更したときに ndk-buildを自動的に実行するよう、Eclipseを構成する方法を示しています。

  1. MinimalistActivityプロジェクトを右クリックし、Propertiesをクリックします。 Propertiesウインドウにて Buildersペインを選択します。
  2. 新しいビルダを追加するために Newをクリックし、Programを選択し、それから、OKをクリックします。
  3. Nameフィールドに 'NDK Builder' を入力します。
  4. Locationの下にある Browse File Systemをクリックし、NDK_ROOTディレクトリに移動し、ndk-buildコマンドを選択します。
  5. Working Directoryの下にある Browse Workspaceをクリックし、MinimalistActivityプロジェクトのフォルダを選択します。
  6. Refreshタブをクリックします。 Refresh resources upon completionボックスがチェックされていることを確認してください。
  7. Specific resourcesラジオボタンを選択し、それから、Specify Resourcesをクリックします。 表示されるダイアログにて、MinimalActivityの下にある jniフォルダを選択します。
  8. あなたのビルダの作成を終了するために、Apply それから OKをクリックします。

今、jniフォルダ内のファイルを編集するたびに、Eclipseは ndk-buildを実行し、Eclipse Consoleに出力を表示するでしょう。