Начать

В этом документе объясняется, как начать разработку с использованием API Nearby Messages на Android. API Nearby Messages является частью сервисов Google Play .

Шаг 1: Подключите сервисы Google Play.

API Nearby Messages доступен на устройствах Android с установленными сервисами Google Play версии 7.8.0 или выше. Устройства под управлением Android 2.3 или выше, на которых установлено приложение Google Play Store, автоматически получают обновления сервисов Google Play. Чтобы проверить, какая версия сервисов Google Play установлена ​​на вашем устройстве, перейдите в Настройки > Приложения > Сервисы Google Play .

Убедитесь, что на вашем хосте разработки установлена ​​последняя версия клиентской библиотеки для сервисов Google Play:

  1. Откройте менеджер Android SDK .
  2. В разделе «Внешний вид и поведение» > «Системные настройки» > «Android SDK» > «Инструменты SDK» убедитесь, что установлены следующие пакеты:

    • Сервисы Google Play
    • Репозиторий Google

Шаг 2: Зарегистрируйте аккаунт Google.

Для использования API Nearby Messages вам потребуется учетная запись Google . Это необходимо для того, чтобы вы, разработчик, могли включить API Nearby на следующем шаге (вашим пользователям учетная запись Google не потребуется). Если у вас уже есть учетная запись, то все готово. Возможно, вам также понадобится отдельная учетная запись Google для целей тестирования.

Шаг 3: Получите ключ API

Выполните следующие шаги, чтобы включить API Google Nearby Messages для Android и получить ключ API:

  1. Перейдите в консоль разработчиков Google .
  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 вашего сертификата.

Для создания нового API-ключа для вашего Android-приложения вам потребуется SHA1-отпечаток сертификата, используемого для подписи APK-файла. Обмен сообщениями возможен только между приложениями, подписанными API-ключами из одного и того же проекта.

Для получения этого отпечатка пальца:

  1. Найдите местоположение вашего хранилища ключей.
  2. В терминале запустите утилиту keytool из JDK. Например, если вы используете хранилище ключей `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 упрощает создание проекта для API Nearby Messages. Следуйте инструкциям, описанным в разделе «Создание проекта» , чтобы создать новый проект. В Android Studio откройте файл build.gradle для вашего модуля и добавьте клиентскую библиотеку Google Play Services в качестве зависимости:

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: Опубликовать и подписаться

В своем приложении начните использовать API Nearby Messages.

@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();
}

Для работы API Nearby Messages требуется согласие пользователя. При первом вызове функции публикации или подписки Nearby отобразит диалоговое окно для подтверждения согласия.