Pour utiliser l'API Google Awareness, vous devez ajouter une clé API Google à votre application. Vous avez besoin d'une clé API Android.
Toutes les applications Android sont signées avec un certificat numérique dont vous détenez la clé privée. Pour en savoir plus sur les certificats numériques, consultez le guide Android sur la signature de votre application.
Les clés API Android sont associées à des paires certificat/package spécifiques. Vous n'avez besoin que d'une seule clé par certificat, quel que soit le nombre d'utilisateurs de l'application.
Plusieurs étapes sont nécessaires pour obtenir une clé pour votre application. Elles sont décrites en détail dans ce guide et sont résumées comme suit:
- Obtenez des informations sur le certificat de votre application.
- Enregistrez un projet dans la Google Developers Console et ajoutez l'API User Context en tant que service.
- Demandez une clé.
- Ajoutez la clé à votre application. Pour cela, ajoutez un élément au fichier manifeste de votre application.
Rechercher des informations sur le certificat de votre application
La clé API est basée sur une version courte du certificat numérique de votre application, appelée empreinte SHA-1. Pour afficher l'empreinte SHA-1 de votre certificat, assurez-vous d'utiliser le bon certificat. Vous avez le choix entre les deux certificats suivants:
- Un certificat de débogage : les outils Android SDK génèrent automatiquement ce certificat lorsque vous exécutez une version de débogage. Utilisez ce certificat uniquement avec les applications que vous testez. N'essayez pas de publier une application signée avec un certificat de débogage. Le certificat de débogage est décrit plus en détail dans la section Signer votre version de débogage de la documentation destinée aux développeurs Android.
- Un certificat de version : le SDK Tools pour Android génère ce certificat lorsque vous créez une build. Vous pouvez également générer ce certificat avec le programme
keytool
. Utilisez ce certificat lorsque vous êtes prêt à publier votre application.
Pour en savoir plus sur keytool
, consultez sa documentation Oracle.
Afficher l'empreinte du certificat de débogage
Utilisez le programme keytool
avec le paramètre -v
pour afficher l'empreinte SHA-1 d'un certificat. Pour ce faire, procédez comme suit :
Recherchez le fichier keystore de débogage. Le nom du fichier est
debug.keystore
. Il est créé la première fois que vous compilez votre projet. Par défaut, il est stocké dans le même répertoire que vos fichiers AVD (Android Virtual Device) :- OS X et Linux:
~/.android/
- Windows Vista et Windows 7 :
C:\Users\your_user_name\.android\
- OS X et Linux:
Affichez l'empreinte SHA-1 :
Pour Linux ou OS X, ouvrez une fenêtre de terminal et saisissez la commande suivante:
keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
Sous Windows Vista et Windows 7, exécutez la commande suivante:
keytool -list -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android
La sortie obtenue doit ressembler à ceci :
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
Afficher l'empreinte du certificat de version
Utilisez le programme keytool
avec le paramètre -v
pour afficher l'empreinte SHA-1 d'un certificat. Pour ce faire, procédez comme suit :
- Recherchez le fichier keystore du certificat de version. Il n'existe pas d'emplacement ni de nom par défaut pour le keystore de publication. Si vous n'en spécifiez pas lorsque vous compilez votre application en vue de sa publication, la version
.apk
est non signée. Vous devez la signer avant de pouvoir la publier. Pour le certificat de version, vous avez également besoin de l'alias du certificat, des mots de passe du keystore et du certificat. Saisissez la commande suivante afin de lister les alias de toutes les clés d'un keystore:
keytool -list -keystore your_keystore_name
- Remplacez
your_keystore_name
par le chemin d'accès complet et le nom du keystore. Incluez l'extension.keystore
. Saisissez le mot de passe du keystore lorsque vous y êtes invité. Ensuite,keytool
affiche tous les alias du keystore. Saisissez la commande suivante sur un terminal ou dans une invite de commande :
keytool -list -v -keystore your_keystore_name -alias your_alias_name
- Remplacez
your_keystore_name
par le chemin d'accès complet et le nom du keystore. Incluez l'extension.keystore
. - Remplacez
your_alias_name
par l'alias que vous avez attribué au certificat lorsque vous l'avez créé.
La sortie obtenue doit ressembler à ceci :
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 ligne commençant par SHA1
contient l'empreinte SHA-1 du certificat. L'empreinte correspond à la séquence de 20 nombres hexadécimaux à deux chiffres séparés par un deux-points.
Obtenir une clé API à partir de la Google Developers Console
Pour commencer à utiliser l'API Google Awareness, cliquez sur le bouton Obtenir une clé. Elle renvoie vers la Google Developers Console, qui vous guide tout au long du processus et active automatiquement l'API Awareness.
Vous pouvez également obtenir une clé API comme suit :
- Accédez à la Google Play Console.
- Sélectionnez un projet ou créez-en un.
- Cliquez sur Continuer pour activer l'API Awareness.
Sur la page "Identifiants", créez une clé Android et définissez les identifiants de l'API.
Dans la boîte de dialogue "Créer une clé", vous devez limiter votre utilisation aux applications Android. Pour ce faire, saisissez l'empreinte SHA-1 et le nom du package de votre application, comme dans l'exemple suivant:
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
Cliquez sur Créer. Votre nouvelle clé API Android apparaît dans la liste des clés API de votre projet. Une clé API est une chaîne de caractères, comme ceci:
AIzaSyBdVl-cTICSwYKrZ95LoVuw7dbMuDt1KG0
Maintenant que vous disposez d'une clé API, vous pouvez l'ajouter au fichier manifeste de votre application, comme décrit dans le guide de démarrage.
Activer des API supplémentaires
L'API Awareness vous permet d'accéder à plusieurs types de données contextuelles, telles que les balises. Pour utiliser ces types, vous devez activer les API correspondantes dans la Google Developers Console.
Service | Méthodes de l'API Awareness | API à activer |
---|---|---|
Balises | SnapshotApi.getBeaconState() , FenceApi.BeaconFence |
API Nearby Messages |