Rozpocznij

Z tego dokumentu dowiesz się, jak zacząć tworzyć aplikacje z wykorzystaniem interfejsu Connected Messages API na Androida. Interfejs w pobliżu do obsługi wiadomości jest częścią Usług Google Play.

Krok 1. Pobierz Usługi Google Play

Interfejs w pobliżu jest dostępny na urządzeniach z Androidem z Usługami Google Play w wersji 7.8.0 lub nowszej. Urządzenia z Androidem 2.3 lub nowszym, na których zainstalowano aplikację Sklep Google Play, automatycznie otrzymują aktualizacje Usług Google Play. Aby sprawdzić, która wersja Usług Google Play jest zainstalowana na urządzeniu, kliknij Ustawienia > Aplikacje > Usługi Google Play.

Upewnij się, że na hoście programowania masz najnowszą bibliotekę kliencką Usług Google Play:

  1. Otwórz Menedżera pakietów SDK na Androida.
  2. W sekcji Wygląd i zachowanie > Ustawienia systemu > Android SDK > Narzędzia SDK sprawdź, czy są zainstalowane te pakiety:

    • Usługi Google Play
    • Repozytorium Google

Krok 2. Załóż konto Google

Aby korzystać z interfejsów API Wiadomości w pobliżu, musisz mieć konto Google. Dzięki temu Ty, jako deweloper, będziecie mogli w następnym kroku włączyć interfejs w pobliżu (użytkownicy nie będą musieli mieć konta Google). Jeśli masz już konto, nie musisz nic robić. Do testowania możesz też utworzyć osobne konto Google.

Krok 3. Uzyskaj klucz interfejsu API

Wykonaj te czynności, aby włączyć interfejs Google Connected Messages API na Androida i uzyskać klucz interfejsu API:

  1. Otwórz Google Developers Console.
  2. Utwórz lub wybierz projekt, w którym chcesz zarejestrować aplikację.
  3. Kliknij Dalej, aby włączyć interfejs API.
  4. Na stronie Dane logowania utwórz nowy klucz Androida i ustaw dane logowania interfejsu API.
    Uwaga: jeśli masz już klucz Androida, możesz go użyć.
  5. W wyświetlonym oknie wpisz odcisk cyfrowy SHA-1 aplikacji i nazwę pakietu. Przykład:
    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. Twój nowy klucz interfejsu Android API pojawi się na liście kluczy interfejsu API w Twoim projekcie. Klucz interfejsu API to ciąg znaków podobny do tego:
    AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0

Uzyskaj odcisk cyfrowy SHA1 swojego certyfikatu

Aby utworzyć nowy klucz interfejsu API dla aplikacji na Androida, potrzebujesz odcisku cyfrowego SHA1 certyfikatu, którego używasz do podpisywania pakietu APK. Wiadomości można wymieniać tylko między aplikacjami podpisanymi kluczami interfejsu API z tego samego projektu.

Aby uzyskać ten odcisk palca:

  1. Znajdź lokalizację magazynu kluczy.
  2. W terminalu uruchom narzędzie keytool z pakietu JDK. Jeśli na przykład korzystasz z magazynu kluczy `debug`:
  3. $ keytool -alias \
    androiddebugkey -keystore \
    ~/.android/debug.keystore -list -v
    

    Uwaga: hasło magazynu kluczy debugowania to android. W systemach macOS i Linux magazyn kluczy debugowania zwykle znajduje się w ~/.android/debug.keystore. W systemie Windows zwykle znajduje się on pod adresem %USERPROFILE%\.android\debug.keystore.

  4. Dane wyjściowe polecenia keytool zawierają odcisk cyfrowy SHA1 certyfikatu.

Krok 4. Skonfiguruj projekt

Android Studio ułatwia tworzenie projektu za pomocą interfejsu Close Messages API. Wykonaj czynności opisane w sekcji Tworzenie projektu, aby utworzyć nowy projekt. W Android Studio otwórz plik build.gradle modułu i dodaj bibliotekę klienta Usług Google Play jako zależność:

apply plugin: 'android'
...

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

Następnie skonfiguruj plik manifestu za pomocą klucza interfejsu API wygenerowanego w poprzednim kroku:

<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>

Krok 5. Opublikuj i zasubskrybuj

W aplikacji zacznij korzystać z interfejsu w pobliżu.

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

Interfejs w pobliżu wymaga zgody użytkownika. Po pierwszym wywołaniu publikacji lub subskrypcji funkcja W pobliżu pokaże okno zgody.