Korzystanie z interfejsu ARCore API w Google Cloud

Wybierz platformę:

Funkcje ARCore, takie jak narzędzia geoprzestrzenne API i Cloud Anchors używają interfejsu API Interfejs ARCore API hostowany w Google Cloud. Podczas korzystania z tych funkcji aplikacja używa danych logowania, aby uzyskać dostęp do usługi ARCore API.

W tym krótkim wprowadzeniu dowiesz się, jak skonfigurować aplikację, aby mogła komunikują się z usługą ARCore API hostowaną w Google Cloud.

Utwórz nowy projekt Google Cloud lub użyj istniejącego projektu

Jeśli masz już projekt, wybierz go.

Otwórz selektor projektów

Jeśli nie masz jeszcze projektu Google Cloud, utwórz go.

Utwórz nowy projekt

Włączanie interfejsu ARCore API

Aby używać interfejsu ARCore API, musisz włączyć go w swoim projekcie.

Włączanie interfejsu ARCore API

Konfigurowanie metody autoryzacji

Aplikacja na Androida może komunikować się z interfejsem ARCore API za pomocą dwóch różnych metod autoryzacji: autoryzacji bez klucza (OAuth 2.0), która jest i autoryzacja klucza interfejsu API:

  • Autoryzacja bez klucza używa kombinacji nazwy pakietu aplikacji oraz odcisk cyfrowy klucza podpisywania, który pozwoli na autoryzację aplikacji.
  • Klucz interfejsu API to ciąg znaków identyfikujący projekt Google Cloud. Klucze interfejsu API są zwykle nie są uznawane za bezpieczne, ponieważ są zazwyczaj dostępne dla klientów. Rozważ użycie autoryzacji bez klucza do komunikacji z interfejsem ARCore API.

Bezkluczykowe

Aby autoryzować aplikację za pomocą uwierzytelniania bez klucza, utwórz klienta OAuth 2.0 Identyfikatory.

Określanie odcisków cyfrowych klucza podpisywania

Identyfikator klienta OAuth 2.0 używa odcisku cyfrowego klucza podpisywania aplikacji do identyfikowania .

Jak uzyskać odcisk cyfrowy podpisywania debugowania

Podczas uruchamiania lub debugowania projektu narzędzia Android SDK automatycznie podpisują aplikację za pomocą wygenerowanego certyfikatu debugowania.

  • W Android Studio otwórz panel narzędzi Gradle.
  • Otwórz project-name > Lista zadań > Android.
  • Uruchom zadanie signingReport.

  • Skopiuj odcisk cyfrowy SHA-1 dla wariantu debugowania.
.

Jak uzyskać odcisk cyfrowy podpisywania z magazynu kluczy

Jeśli masz plik magazynu kluczy, użyj narzędzia keytool, aby określić odcisk cyfrowy.

keytool -list -v -alias your-key-name -keystore path-to-production-keystore

Następnie narzędzie keytool wydrukuje odcisk palca w terminalu. Na przykład:

   Certificate fingerprint: SHA1: DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09

Jak uzyskać klucz podpisywania aplikacji z usługi podpisywania aplikacji przez Google Play

Jeśli używasz podpisywania aplikacji przez Google Play, Google zarządza kluczem podpisywania aplikacji i używa go do podpisywania plików APK. Ten klucz powinien być używany jako odcisk cyfrowy podpisywania.

  1. Na stronie podpisywania aplikacji w Konsoli Google Play przewiń do sekcji Certyfikat klucza podpisywania aplikacji.
  2. Użyj odcisku cyfrowego certyfikatu SHA-1.

Tworzenie identyfikatorów klienta OAuth 2.0

Dla każdego odpowiedniego klucza podpisywania z poprzednich kroków utwórz identyfikator klienta OAuth 2.0 w Dane logowania projektu Google Cloud.

  • W Google Cloud otwórz stronę Dane logowania.

    Dane logowania

  • Kliknij Utwórz dane logowania i w menu wybierz Identyfikator klienta OAuth.

  • Wypełnij wymagane pola w następujący sposób:

    • Typ aplikacji: wybierz Android.
    • Nazwa pakietu: użyj nazwy pakietu zadeklarowanej w pliku AndroidManifest.xml.
    • Odcisk cyfrowy certyfikatu SHA-1: użyj odcisku cyfrowego uzyskany w poprzednich krokach.
  • Kliknij Utwórz.

Uwzględnij wymagane biblioteki

  1. Uwzględnij com.google.android.gms:play-services-auth:16+ w zależnościach aplikacji.
  2. Jeśli używasz minifikacji kodu, dodaj je do pliku build.gradle aplikacji:

    buildTypes {
      release {
        ...
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
      }
    }
    
  3. Do pliku proguard-rules.pro aplikacji dodaj te informacje:

    -keep class com.google.android.gms.common.** { *; }
    -keep class com.google.android.gms.location.** { *; }
    -keep class com.google.android.gms.auth.** { *; }
    -keep class com.google.android.gms.tasks.** { *; }
    

Aplikacja jest teraz skonfigurowana do korzystania z uwierzytelniania bez klucza.

Klucz interfejsu API

  1. W Google Cloud otwórz stronę Dane logowania.
    Dane logowania
  2. Kliknij Utwórz dane logowania i w menu wybierz Klucz interfejsu API.
    Okno utworzenia klucza interfejsu API wyświetla ciąg znaków dla nowo utworzonego klucza.
  3. W Android Studio dodaj do projektu nowy klucz interfejsu API. Umieść klucz interfejsu API w pliku <meta-data> w sekcji <application> element w AndroidManifest.xml aplikacji:

    <meta-data
      android:name="com.google.android.ar.API_KEY"
      android:value="API_KEY"/>
    
  4. Zapoznaj się z dokumentacją dotyczącą ograniczeń klucza interfejsu API. aby zabezpieczyć klucz interfejsu API.

Twoja aplikacja jest teraz skonfigurowana do używania kluczy interfejsu API.

Co dalej?

Po skonfigurowaniu autoryzacji sprawdź te funkcje ARCore, które używają :