Utilizzare l'API ARCore su Google Cloud

Seleziona la piattaforma:

Le funzionalità ARCore come l'API Geospatial e i Cloud Anchor utilizzano l'API ARCore ospitata su Google Cloud. Quando usi queste funzionalità, l'applicazione usa le credenziali per accedere al servizio API ARCore.

Questa guida rapida descrive come configurare la tua 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 già un progetto, selezionalo.

Vai al selettore progetti

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

Crea un nuovo progetto

Abilita l'API ARCore

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

Abilita l'API ARCore

Configura un metodo di autorizzazione

Un'applicazione 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 mediante chiave API:

  • L'autorizzazione senza chiave utilizza una combinazione del nome del pacchetto dell'applicazione e della fingerprint della chiave di firma per autorizzare l'applicazione.
  • Una chiave API è una stringa che identifica un progetto Google Cloud. Generalmente le chiavi API non sono considerate sicure poiché sono accessibili ai client. Potresti utilizzare l'autorizzazione senza chiave per comunicare con l'API ARCore.

Senza chiave

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

Determinare le fingerprint della chiave di firma

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

Come ottenere l'impronta per la firma di debug

Durante l'esecuzione o 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 di Gradle.
  • Vai a project-name > Tasks > Android.
  • Esegui l'attività signingReport.

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

Come ottenere una fingerprint di firma da un archivio chiavi

Se hai un file di archivio chiavi, utilizza l'utilità keytool per determinare la fingerprint.

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

L'utilità keytool quindi stampa 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

Se 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 digitale di 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: viene utilizzata un'impronta ottenuta nei passaggi precedenti.
  • Premi Crea.

Includi le librerie richieste

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

    buildTypes {
      release {
        ...
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
      }
    }
    
  3. Aggiungi il seguente codice 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.** { *; }
    

Ora la tua app è configurata per utilizzare l'autenticazione senza chiave.

Chiave API

  1. In Google Cloud, apri la pagina Credenziali.
    Credenziali
  2. Fai clic su Crea credenziali, quindi seleziona Chiave API dal menu.
    Nella finestra di dialogo della chiave API creata viene visualizzata la stringa per la 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'elemento AndroidManifest.xml dell'app:

    <meta-data
      android:name="com.google.android.ar.API_KEY"
      android:value="API_KEY"/>
    
  4. Consulta la documentazione sulle restrizioni 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, controlla le seguenti funzionalità di ARCore che la utilizzano: