Per utilizzare l'API Google Awareness, devi aggiungere una chiave API di Google alla tua app. Il tipo di chiave API di cui hai bisogno è una chiave API Android.
Tutte le app per Android sono firmate con un certificato digitale di cui possiedi la chiave privata. Per ulteriori informazioni sui certificati digitali, consulta la guida di Android su come firmare l'app.
Le chiavi API Android sono collegate a coppie di certificati e pacchetti specifiche. Ti serve una sola chiave per ogni certificato, indipendentemente dal numero di utenti dell'app.
Per ottenere una chiave per la tua app, devi seguire diversi passaggi, descritti in dettaglio in questa guida e riassunti di seguito:
- Ricevi informazioni sul certificato della tua app.
- Registra un progetto nella console Google Developers e aggiungi l'API User Context come servizio per il progetto.
- Richiedi una chiave.
- Aggiungi la chiave alla tua app. Per farlo, aggiungi un elemento al manifest dell'app.
Trova le informazioni sul certificato della tua app
La chiave API si basa su una forma abbreviata del certificato digitale della tua app, nota come impronta SHA-1. Per visualizzare l'impronta digitale SHA-1 del certificato, assicurati innanzitutto di utilizzare il certificato corretto. Potresti avere i seguenti due certificati tra cui scegliere:
- Un certificato di debug: gli strumenti SDK Android generano questo certificato automaticamente quando esegui una build di debug. Utilizza questo certificato solo con le app che stai testando. Non tentare di pubblicare un'app firmata con un certificato di debug. Il certificato di debug è descritto in modo più dettagliato nella sezione Firma la build di debug della documentazione per lo sviluppatore Android.
- Un certificato di release: gli Strumenti SDK Android generano questo certificato quando crei una build di release. Puoi anche generare questo certificato con il programma
keytool. Utilizza questo certificato quando è tutto pronto per rilasciare la tua app al pubblico.
Per ulteriori informazioni su keytool, consulta la relativa documentazione Oracle.
Visualizza il fingerprint del certificato di debug
Utilizza il programma keytool con il parametro -v per visualizzare l'impronta digitale SHA-1 di un certificato. Per farlo, segui questa procedura.
Individua il file dell'archivio chiavi di debug. Il nome del file è
debug.keystoree viene creato la prima volta che crei il progetto. Per impostazione predefinita, viene archiviato nella stessa directory dei file di Android Virtual Device (AVD):- OS X e Linux:
~/.android/ - Windows Vista e Windows 7:
C:\Users\your_user_name\.android\
- OS X e Linux:
Elenca l'impronta SHA-1:
Per Linux o OS X, apri una finestra del terminale e inserisci quanto segue:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Per Windows Vista e Windows 7, esegui questo comando:
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
Dovresti vedere un output simile al seguente:
Alias name: androiddebugkey Creation date: Jan 01, 2013 Entry type: PrivateKeyEntry Certificate chain length: 1 Certificate[1]: Owner: CN=Android Debug, O=Android, C=US Issuer: CN=Android Debug, O=Android, C=US Serial number: 4aa9b300 Valid from: Mon Jan 01 08:04:04 UTC 2013 until: Mon Jan 01 18:04:04 PST 2033 Certificate fingerprints: MD5: AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6A:AC:F9 SHA1: BB:0D:AC:74:D3:21:E1:43:07:71:9B:62:90:AF:A1:66:6E:44:5D:75 Signature algorithm name: SHA1withRSA Version: 3
Visualizza il fingerprint del certificato di release
Utilizza il programma keytool con il parametro -v per visualizzare l'impronta digitale SHA-1 di un certificato. Per farlo, segui questa procedura.
- Individua il file dell'archivio chiavi del certificato di release. Non esiste una posizione o un nome predefinito per il keystore di release. Se non ne specifichi uno quando crei la tua app per il rilascio, la build lascia il tuo
.apknon firmato e devi firmarlo prima di poterlo pubblicare. Per il certificato di release, devi anche avere l'alias del certificato, le password per il keystore e il certificato. Inserisci quanto segue per elencare gli alias di tutte le chiavi in un archivio chiavi:
keytool -list -keystore your_keystore_name
- Sostituisci
your_keystore_namecon il nome e il percorso completo dell'archivio chiavi. Includi l'estensione.keystore. Quando richiesto, inserisci la password del keystore. Quindi,keytoolvisualizza tutti gli alias nel keystore. Inserisci quanto segue in un terminale o prompt dei comandi:
keytool -list -v -keystore your_keystore_name -alias your_alias_name
- Sostituisci
your_keystore_namecon il nome e il percorso completo dell'archivio chiavi. Includi l'estensione.keystore. - Sostituisci
your_alias_namecon l'alias assegnato al certificato durante la creazione.
Dovresti vedere un output simile al seguente:
Alias name: <alias_name> Creation date: Feb 02, 2013 Entry type: PrivateKeyEntry Certificate chain length: 1 Certificate[1]: Owner: CN=Android Debug, O=Android, C=US Issuer: CN=Android Debug, O=Android, C=US Serial number: 4cc9b300 Valid from: Mon Feb 02 08:01:04 UTC 2013 until: Mon Feb 02 18:05:04 PST 2033 Certificate fingerprints: MD5: AE:9F:95:D0:A6:86:89:BC:A8:70:BA:34:FF:6B:AC:F9 SHA1: BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:90:AF:A1:66:6E:44:5D:75 Signature algorithm name: SHA1withRSA Version: 3
La riga che inizia con SHA1 contiene l'impronta digitale SHA-1 del certificato. La fingerprint è la sequenza di 20 numeri esadecimali a due cifre separati da due punti.
Ottieni una chiave API da Google Developers Console
Per iniziare a utilizzare l'API Google Awareness, fai clic sul pulsante Ottieni una chiave. Rimanda alla Google Developers Console, che ti guida nella procedura e attiva automaticamente l'API Awareness.
In alternativa, segui questi passaggi per ottenere una chiave API:
- Vai a Google Developers Console.
- Seleziona un progetto oppure creane uno nuovo.
- Fai clic su Continua per abilitare l'API Awareness.
Nella pagina "Credenziali", crea una chiave Android e imposta le credenziali API.
Nella finestra di dialogo "Crea chiave", devi limitare l'utilizzo alle app per Android. Per farlo, inserisci l'impronta SHA-1 e il nome del pacchetto dell'app, come nell'esempio seguente:
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75 com.example.android.awareness-exampleFai clic su Crea. La nuova chiave API Android viene visualizzata nell'elenco delle chiavi API del tuo progetto. Una chiave API è una stringa di caratteri, come la seguente:
AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
Ora che hai una chiave API, puoi aggiungerla al file manifest della tua app, come descritto nella guida Inizia.
Attiva API aggiuntive
L'API Awareness ti consente di accedere a più tipi di dati contestuali, come i beacon. Per utilizzare questi tipi, devi attivare le API corrispondenti in Google Developers Console.
| Servizio | Metodi dell'API Awareness | API da abilitare |
|---|---|---|
| Beacon | SnapshotApi.getBeaconState(),
FenceApi.BeaconFence |
API Nearby Messages |