Utilizzare l'API ARCore su Google Cloud

Seleziona la piattaforma:

Le funzionalità di ARCore, come l'API Geospaziale e Cloud Anchors, utilizzano l'API ARCore ospitata su Google Cloud. Quando utilizzi queste funzionalità, la tua applicazione utilizza le credenziali per accedere al servizio API ARCore.

Questa guida rapida descrive come configurare l'applicazione in modo che possa comunicare con il servizio API ARCore ospitato su Google Cloud.

Crea un nuovo progetto Google Cloud o utilizzane uno esistente.

Se hai un progetto esistente, selezionalo.

Vai al selettore di progetti

Se non hai un progetto Google Cloud esistente, creane uno.

Crea nuovo progetto

Attivare l'API ARCore

Per utilizzare l'API ARCore, devi abilitarla nel tuo progetto.

Abilita l'API ARCore

Configurare un metodo di autorizzazione

Un'app per Android può comunicare con l'API ARCore utilizzando due diversi metodi di autorizzazione: autorizzazione senza chiave (OAuth 2.0), che è il metodo consigliato, e autorizzazione con chiave API:

  • L'autorizzazione senza chiave utilizza una combinazione del nome del pacchetto dell'applicazione e dell'impronta della chiave di firma per autorizzare l'applicazione.
  • Una chiave API è una stringa che identifica un progetto cloud di Google. Le chiavi API in genere non sono considerate sicure perché sono in genere accessibili ai client. Valuta la possibilità di utilizzare l'autorizzazione senza chiavi per comunicare con l'API ARCore.

Keyless

Per autorizzare la tua app utilizzando l'autenticazione senza chiave, crea ID client OAuth 2.0.

Determinare le impronte delle chiavi di firma

Un ID client OAuth 2.0 utilizza l'impronta della chiave di firma dell'app per identificare la tua app.

Come ottenere l'impronta della firma di debug

Quando esegui o esegui il debug del progetto, gli strumenti SDK Android firmano automaticamente la tua app con un certificato di debug generato.

  • In Android Studio, apri il pannello degli strumenti Gradle.
  • Vai a project-name > Tasks > android.
  • Esegui l'attività signingReport.

  • Copia l'impronta SHA-1 per la variante debug.

Come ottenere un'impronta di firma da un keystore

Se hai un file keystore, utilizza l'utilità keytool per determinare l'impronta.

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

L'utilità keytool stampa quindi l'impronta sul terminale. Ad esempio:

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

Come ottenere la chiave di firma dell'app dalla firma dell'app di Google Play

Quando utilizzi la firma dell'app di Google Play, Google gestisce la chiave di firma dell'app e la utilizza per firmare gli APK. Questa chiave deve essere utilizzata per l'impronta della firma.

  1. Nella pagina Firma dell'app di Google Play Console, scorri fino a Certificato della chiave di firma dell'app.
  2. Utilizza l'impronta digitale del certificato SHA-1.

Creare ID client OAuth 2.0

Per ogni chiave di firma applicabile dei passaggi precedenti, crea un ID client OAuth 2.0 nelle credenziali del tuo progetto Google Cloud.

  • In Google Cloud, apri la pagina Credenziali.

    Credenziali

  • Fai clic su Crea credenziali, quindi seleziona ID client OAuth dal menu.

  • Compila i campi obbligatori come segue:

    • Tipo di applicazione: scegli Android.
    • Nome del pacchetto: utilizza il nome del pacchetto dichiarato nel file AndroidManifest.xml.
    • fingerprint del certificato SHA-1: utilizza un fingerprint ottenuto nei passaggi precedenti.
  • Premi Crea.

Includere le librerie richieste

  1. Includi com.google.android.gms:play-services-auth:16+ nelle dipendenze dell'app.
  2. Se utilizzi la riduzione del codice, aggiungila al file build.gradle della tua app:

    buildTypes {
      release {
        ...
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
      }
    }
    
  3. Aggiungi quanto segue al file proguard-rules.pro dell'app:

    -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.** { *; }
    

La tua app è ora configurata per utilizzare l'autenticazione senza chiave.

Chiave API

  1. In Google Cloud, apri la pagina Credenziali.
    Credenziali
  2. Fai clic su Crea credenziali, poi seleziona Chiave API dal menu.
    La finestra di dialogo Chiave API creata mostra la stringa della chiave appena creata.
  3. In Android Studio, aggiungi la nuova chiave API al progetto. Includi la chiave API in un elemento <meta-data> nell'elemento <application> nell'AndroidManifest.xml della tua app:

    <meta-data
      android:name="com.google.android.ar.API_KEY"
      android:value="API_KEY"/>
    
  4. Consulta la documentazione sulle limitazioni relative alle chiavi API per proteggere la tua chiave API.

Ora la tua app è configurata per utilizzare le chiavi API.

Passaggi successivi

Con l'autorizzazione configurata, dai un'occhiata alle seguenti funzionalità di ARCore che la utilizzano: