Android Wear : La montre connectée – Partie 1

Récemment Google a annoncé la sortie du SDK Android Wear en preview. Android Wear est le prochain gadget Google dans le domaine des montres connectées.

Dans cette première partie du tuto, je vais expliquer comment obtenir un accès à cette preview et créer un petit exemple sur Android Wear (création du projet, création de la notification et de boutons).

1 – Pré-requis

  • Pour avoir accès à la preview du SDK, vous pouvez faire la demande sur le site officiel d’Android Wear : http://developer.android.com/wear/preview/start.html
  • Avoir le SDK Android d’installé et de configuré sur votre poste

2 – Installation et Configuration d’Android Wear

1- Mettre à jour votre Android SDK Tools (partie Tools du SDK Manager), vous devez disposer d’une version 22.6 ou supérieur

2 – Une fois l’accès obtenu (vous allez recevoir un mail vous donnant l’accès à la preview), exécutez votre SDK Manager (depuis Eclipse ou depuis Android Studio). Sous la section Android 4.4.2, installez l’élément suivant : Android Wear ARM EABI v7a System Image (ce qui correspond à l’image permettant d’obtenir un émulateur Android Wear)

3 – Vérifier dans la partie Extras que votre version du Support Library est à jour

4 – Installez les différents paquets sélectionnés (nécessite un redémarrage d’Eclipse)

5 – Exécutez votre Android Virtual Device Manager

6 – Cliquez sur le bouton “New” afin de créer un nouvel émulateur

7 – Remplissez les configurations comme ci-dessous

  • AVD Name : Nom de votre émulateur
  • Device : Sélectionnez Android Wear Square (version carré) ou Android Wear Round (version ronde)
  • Target : Choisissez la version 4.4.2 ou supérieur
  • Skin : Sélectionnez AndroidWearSquare ou AndroidWearRound (en fonction du choix précédant – section Device)
  • Laissez les autres zones par défauts – Vous pouvez cochez l’option “Use Host GPU”

8 – Puis sélectionnez l’émulateur crée et cliquez sur le bouton Start. Après quelques secondes l’émulateur sera prêt à être utilisé

9 – Il vous faut installez l’application Preview d’Android Wear, qui permet de connecter un device à l’émulateur Android Wear. Le lien pour installer cette application, vous sera fourni dans le mail que vous allez recevoir après l’inscription à la preview du SDK d’Android Wear

10 – Une fois l’application installez vous pouvez la lancer et exécutez la commande suivante :

Assurez-vous qu’aucun autre device n’est lancé à part votre appareil et l’émulateur Android Wear

La commande adb se trouve dans le dossier plateform-tools de votre SDK Android

11 – Cliquez sur le bouton connect disponible sur l’application de preview

3 – Exemple

Nous allons créer un petit projet pour tester Android Wear, le but du projet est d’avoir une application très simple possédant un bouton qui lancera une notification sur l’émulateur Android Wear. à l’ouverture de cette notification, une nouvelle vue sera affiché sur l’appareil Android (device pas l’émulateur)

Dans le dossier libs de votre projet, insérez le jar reçu par mail (wearable-preview-support.jar) et ajoutez la à votre projet (Sous eclipse)

Sous Android Studio, regardez le lien suivant : http://developer.android.com/wear/preview/start.html#AddLibrary

4 – Création de la notification

Voici le code XML correspond à l’interface principale, possédant un simple bouton, qui permettra lors du clic de générer une notification

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin" >

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/android_wear_generate_notification"
        android:id="@+id/generate_android_wear_notification" />

</RelativeLayout>

Voici le code de l’activité, qui permettra de créer une notification au clic sur le bouton (rien de bien compliqué)


public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		Button launchNotification = (Button) findViewById(R.id.generate_android_wear_notification);
		launchNotification.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				createNotification();
			}
		});

	}
	
	private void createNotification() {
		int notificationId = 42;
		Intent intent = new Intent(this, ResultActivity.class);
		PendingIntent pendingIntent =
		        PendingIntent.getActivity(this, 0, intent, 0);

		NotificationCompat.Builder notificationBuilder =
		        new NotificationCompat.Builder(this)
		        .setSmallIcon(R.drawable.ic_launcher)
		        .setContentTitle("Ma notification Android Wear")
		        .setContentText("Texte de la notification")
		        .setContentIntent(pendingIntent);

		NotificationManagerCompat notificationManager =
		        NotificationManagerCompat.from(this);

		notificationManager.notify(notificationId, notificationBuilder.build());
	}
}
  • NotificationCompat : Vous permet de créer des notifications (Jelly Bean) quelques soit là version de l’appareil à l’aide de la lib support-v4
  • NotificationManagerCompat : Vous permet de gérer et lancer des notifications compatibles avec Android Wear
  • Le reste est très simple le clic sur la notification lancera le pending Intent donc la deuxième vue
  • Le code de la deuxième vue est très simple, il contient simplement une zone de texte
  • Pour + d’information sur les notifications regardez cet ancien tuto : http://www.tutos-android.com/notifications-android

Nous allons exécutez le projet sur notre device, ce qui donnera :

Voici le résultat du clic sur le bouton de génération :

Par défaut le bouton “Open” est crée pour ouvrir votre notification :

Le clic sur le bouton “Open” ouvre l’intent spécifié sur votre appareil

5 – Ajouter des boutons

Vous pouvez rajouter vos propres boutons simplement à l’aide de la méthode addAction, qui prends en argument,

  • L’icone représentant le bouton
  • Le texte du bouton
  • L’intent représentant l’action à exécuter lors du clic sur le bouton
NotificationCompat.Builder notificationBuilder =
		        new NotificationCompat.Builder(this)
		        .setSmallIcon(R.drawable.ic_launcher)
		        .setContentTitle("Ma notification Android Wear")
		        .setContentText("Texte de la notification")
		        .setContentIntent(viewPendingIntent).addAction(R.drawable.yes,
	                getString(R.string.validate), viewPendingIntent);

Ce qui donnera :

Conclusion

Dans la deuxième partie du tuto, nous allons aborder un peu plus la personnalisation des notifications et la possibilité de rajouter des vues plus explicite sur le contenu des notifications.

En attendant voici le projet eclipse du tuto

Un commentaire


  1. Bonjour ;

    J’essaye de connecter l’émulateur de la montre avec un autre émulateur mais ils se connectent pas.
    Pouvez vous me dire est ce que je dois avoir un téléphone réel pour tester des applications sur la montre connectée.
    Je vous remercie beaucoup pour votre réponse.
    Bien cordialement

    Répondre

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *