開始する

このドキュメントでは、Android で Nearby Messages API を使用した開発を開始する方法について説明します。Nearby Messages API は Google Play 開発者サービスの一部です。

ステップ 1: Google Play 開発者サービスを取得する

Nearby Messages API は、 Google Play 開発者サービス 7.8.0 以降を搭載した Android デバイスで利用できます。Android 2.3 以降を搭載し、Google Play ストア アプリがインストールされているデバイスでは、Google Play 開発者サービスが自動的に更新されます。デバイスにインストールされている Google Play 開発者サービスのバージョンを確認するには、[設定] > [アプリ] > [Google Play 開発者サービス] に移動します。

開発ホストに最新の Google Play 開発者サービス クライアント ライブラリがインストールされていることを確認します。

  1. Android SDK Manager を開きます。
  2. [外観と動作] > [システム設定] > [Android SDK] > [SDK Tools] で、次のパッケージがインストールされていることを確認します。

    • Google Play 開発者サービス
    • Google Repository

ステップ 2: Google アカウントを取得する

Nearby Messages API を使用するには、Google アカウントが必要です。 これは、デベロッパーが次のステップで Nearby API を有効にするために必要です(ユーザーは Google アカウントを必要としません)。 アカウントをすでにお持ちの場合は、準備は完了です。テスト用に別の Google アカウントを取得することもできます。

ステップ 3: API キーを取得する

次の手順に沿って、Android 用の Google Nearby Messages API を有効にして API キーを取得します。

  1. Google Developers Console にアクセスします。
  2. アプリを登録するプロジェクトを作成または選択します。
  3. [続行] をクリックして API を有効にします。
  4. [認証情報] ページで、新しいAndroid キー を作成します(API 認証情報を設定します)。
    注: 既存のAndroid キーがある場合は、そのキーを使用してもかまいません。
  5. 表示されたダイアログで、アプリのSHA-1 フィンガープリント とパッケージ名を入力します。次に例を示します。
    BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
    com.example.android.nearbyexample
  6. プロジェクトの API キーのリストに、新しい Android API キーが表示されます。 API キーは次のような文字列です。
    AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

証明書の SHA1 フィンガープリントを取得する

Android アプリの新しい API キーを作成するには、APK の署名に使用する証明書の SHA1 フィンガープリントが必要です。メッセージを交換できるのは、同じプロジェクトの API キーで署名されたアプリ間のみです。

このフィンガープリントを取得する手順は次のとおりです。

  1. キーストアの場所を確認します。
  2. ターミナルで、JDK の keytool ユーティリティを実行します。たとえば、`debug` キーストアを使用している場合は、次のようにします。
  3. $ keytool -alias \
    androiddebugkey -keystore \
    ~/.android/debug.keystore -list -v
    

    注: デバッグ キーストアのパスワードは android です。Mac OS と Linux の場合、デバッグ キーストアは通常 ~/.android/debug.keystore にあります。Windows の場合、通常は %USERPROFILE%\.android\debug.keystore にあります。

  4. keytool コマンドの出力には、証明書の SHA1 フィンガープリントが含まれています。

ステップ 4: プロジェクトを構成する

Android Studio を使用すると、Nearby Messages API のプロジェクトを 簡単に作成できます。新しいプロジェクトを作成するには、 プロジェクトを作成する の手順に沿って操作します。Android Studio で、モジュールの build.gradle ファイルを開き、Google Play 開発者サービス クライアント ライブラリを依存関係として追加します。

apply plugin: 'android'
...

dependencies {
    compile 'com.google.android.gms:play-services-nearby:19.3.0'
}

次に、前のステップで生成した API キーを使用してマニフェストを構成します。

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.google.sample.app" >
    <application ...>
        <meta-data
            android:name="com.google.android.nearby.messages.API_KEY"
            android:value="API_KEY" />
        <activity>
        ...
        </activity>
    </application>
</manifest>

ステップ 5: 公開と登録

アプリで Nearby Messages API の使用を開始します。

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ...
    mMessageListener = new MessageListener() {
        @Override
        public void onFound(Message message) {
            Log.d(TAG, "Found message: " + new String(message.getContent()));
        }

        @Override
        public void onLost(Message message) {
            Log.d(TAG, "Lost sight of message: " + new String(message.getContent()));
        }
    }

    mMessage = new Message("Hello World".getBytes());
}

@Override
public void onStart() {
    super.onStart();
    ...
    Nearby.getMessagesClient(this).publish(mMessage);
    Nearby.getMessagesClient(this).subscribe(mMessageListener);
}

@Override
public void onStop() {
    Nearby.getMessagesClient(this).unpublish(mMessage);
    Nearby.getMessagesClient(this).unsubscribe(mMessageListener);
    ...
    super.onStop();
}

Nearby Messages API にはユーザーの同意が必要です。公開または登録が初めて呼び出されると、ニアバイシェアにオプトイン ダイアログが表示されます。