Ce document explique comment commencer à développer avec l'API Nearby Messages sur Android. L'API Nearby Messages fait partie des services Google Play.
Étape 1: Installer les services Google Play
L'API Nearby Messages est disponible sur les appareils Android équipés des services Google Play 7.8.0 ou version ultérieure. Les appareils équipés d'Android 2.3 ou version ultérieure et disposant de l'application Google Play Store reçoivent automatiquement les mises à jour des services Google Play. Pour vérifier quelle version des services Google Play est installée sur votre appareil, accédez à Settings > Apps > Google Play services (Paramètres > Applications > Services Google Play).
Assurez-vous de disposer de la dernière bibliothèque cliente pour les services Google Play sur votre hôte de développement:
- Ouvrez Android SDK Manager.
Sous Appearance & Behavior > System Settings > Android SDK > SDK Tools (Apparence et comportement > Paramètres système > SDK Android > SDK Tools), assurez-vous que les packages suivants sont installés:
- Services Google Play
- Dépôt Google
Étape 2: Obtenez un compte Google
Pour utiliser les API Nearby Messages, vous avez besoin d'un compte Google. Vous, en tant que développeur, pouvez ainsi activer l'API Nearby à l'étape suivante (vos utilisateurs n'auront pas besoin de disposer d'un compte Google). Si vous avez déjà un compte, vous êtes prêt. Vous pouvez également créer un compte Google distinct à des fins de test.
Étape 3 : Obtenez une clé API
Pour activer l'API Google Nearby Messages pour Android et obtenir une clé API, procédez comme suit:
- Accédez à la Google Developers Console.
- Créez ou sélectionnez un projet avec lequel enregistrer votre application.
- Cliquez sur Continuer pour activer l'API.
- Sur la page Identifiants, créez une clé Android (et définissez les identifiants de l'API).
Remarque: Si vous disposez d'une clé Android, vous pouvez l'utiliser. - Dans la boîte de dialogue qui s'affiche, saisissez l'empreinte SHA-1 et le nom du package de votre application. Exemple :
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
com.example.android.nearbyexample
- Votre nouvelle clé API Android s'affiche dans la liste des clés API de votre projet.
Une clé API est une chaîne de caractères semblable à ce qui suit :
AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0
Obtenir l'empreinte SHA1 de votre certificat
Pour créer une clé API pour votre application Android, vous avez besoin de l'empreinte SHA1 du certificat que vous utilisez pour signer votre APK. Les messages ne peuvent être échangés que entre des applications signées avec des clés API du même projet.
Pour obtenir cette empreinte:
- Recherchez l'emplacement de votre keystore.
- Dans un terminal, exécutez l'utilitaire
keytool
à partir du JDK. Par exemple, si vous utilisez le keystore`debug`
: - Le résultat de la commande
keytool
contient l'empreinte SHA1 du certificat.
$ keytool -alias \ androiddebugkey -keystore \ ~/.android/debug.keystore -list -v
Remarque:Pour le keystore de débogage, le mot de passe est android
. Sous Mac OS et Linux, le keystore de débogage se trouve généralement dans l'emplacement ~/.android/
. Sous Windows, il se trouve généralement à l'emplacement suivant : %USERPROFILE%\
.
Étape 4: Configurer votre projet
Android Studio permet de créer facilement un projet pour l'API Nearby Messages. Pour créer un projet, suivez la procédure décrite dans Créer un projet. Dans Android Studio, ouvrez le fichier build.gradle
de votre module et ajoutez la bibliothèque cliente des services Google Play en tant que dépendance:
apply plugin: 'android' ... dependencies { compile 'com.google.android.gms:play-services-nearby:19.3.0' }
Configurez ensuite votre fichier manifeste avec la clé API générée à l'étape précédente:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.sample.app" >
<application ...>
<meta-data
android:name="com.google.android.nearby.messages.API_KEY"
android:value="API_KEY" />
<activity>
...
</activity>
</application>
</manifest>
Étape 5: Publier et s'abonner
Dans votre application, commencez à utiliser l'API Nearby Messages.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
mMessageListener = new MessageListener() {
@Override
public void onFound(Message message) {
Log.d(TAG, "Found message: " + new String(message.getContent()));
}
@Override
public void onLost(Message message) {
Log.d(TAG, "Lost sight of message: " + new String(message.getContent()));
}
}
mMessage = new Message("Hello World".getBytes());
}
@Override
public void onStart() {
super.onStart();
...
Nearby.getMessagesClient(this).publish(mMessage);
Nearby.getMessagesClient(this).subscribe(mMessageListener);
}
@Override
public void onStop() {
Nearby.getMessagesClient(this).unpublish(mMessage);
Nearby.getMessagesClient(this).unsubscribe(mMessageListener);
...
super.onStop();
}
L'API Nearby Messages nécessite le consentement de l'utilisateur. Lorsque la publication ou l'abonnement est appelé pour la première fois, Nearby affiche une boîte de dialogue d'activation.