Per utilizzare l'API Google Awareness, devi aggiungere una chiave API Google alla tua app. Il tipo di chiave API di cui hai bisogno è una chiave API Android.
Tutte le app Android sono firmate con un certificato digitale di cui detenete 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 pacchetti di certificati specifici. Ti occorre solo una chiave per ogni certificato, indipendentemente dal numero di utenti dell'app.
Per ottenere una chiave per la tua app sono necessari diversi passaggi, descritti in dettaglio in questa guida e riassunti di seguito:
- Visualizza le informazioni sul certificato della tua app.
- Registra un progetto in Google Developers Console e aggiungi l'API User Context come servizio per il progetto.
- Richiedi una chiave.
- Aggiungi la chiave all'app. Per farlo, aggiungi un elemento al manifest dell'app.
Trovare le informazioni del certificato dell'app
La chiave API si basa su una forma breve del certificato digitale della tua app, conosciuta come impronta SHA-1. Per visualizzare l'impronta SHA-1 del certificato, assicurati innanzitutto di utilizzare il certificato corretto. Potresti avere a disposizione i seguenti due certificati:
- Un certificato di debug: gli strumenti Android SDK 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 maggiore dettaglio nella sezione Firma la compilazione di debug della documentazione per gli sviluppatori Android.
- Un certificato di rilascio: gli strumenti dell'SDK Android generano questo certificato quando esegui 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
documentazione Oracle.
Mostrare l'impronta digitale del certificato di debug
Utilizza il programma keytool
con il parametro -v
per visualizzare l'impronta SHA-1 di un certificato. Per farlo, segui questa procedura.
Individua il file del keystore di debug. Il nome del file è
debug.keystore
e viene creato la prima volta che compili il progetto. Per impostazione predefinita, viene archiviato nella stessa directory dei file del dispositivo virtuale Android (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 quanto segue:
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 l'impronta del certificato di rilascio
Utilizza il programma keytool
con il parametro -v
per visualizzare l'impronta SHA-1 di un certificato. Per farlo, segui questa procedura.
- Individua il file dell'archivio chiavi del certificato di rilascio. Non esiste un nome o una posizione predefiniti per il keystore della release. Se non ne specifichi uno quando
compili l'app per la release, la compilazione lascia il tuo
.apk
non firmato e devi firmarlo prima di poterlo pubblicare. Per il certificato di rilascio, devi anche avere l'alias del certificato, le password per l'archivio chiavi 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_name
con il nome e il percorso completo dell'archivio chiavi. Includi l'estensione.keystore
. Quando richiesto, inserisci la password del keystore. Quindi,keytool
mostra tutti gli alias nel keystore. Inserisci quanto segue in un terminale o un prompt dei comandi:
keytool -list -v -keystore your_keystore_name -alias your_alias_name
- Sostituisci
your_keystore_name
con il nome e il percorso completo dell'archivio chiavi. Includi l'estensione.keystore
. - Sostituisci
your_alias_name
con 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 SHA-1 del certificato. L'impronta è la sequenza di 20 numeri esadecimali a due cifre separati da due punti.
Ottenere una chiave API dalla Console per gli sviluppatori Google
Per iniziare a utilizzare l'API Google Awareness, fai clic sul pulsante Richiedi una chiave. Ti indirizza alla console Google Developers, 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 o 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. A tale scopo, 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-example
Fai clic su Crea. La nuova chiave API Android viene visualizzata nell'elenco delle chiavi API per il progetto. Una chiave API è una stringa di caratteri, ad esempio la seguente:
AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
Ora che hai una chiave API, puoi aggiungerla al file manifest della tua app, come descritto nella guida Inizia.
Attivare API aggiuntive
L'API Awareness consente di accedere a più tipi di dati contestuali, ad esempio 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 |