Tutoriel | Faire vibrer le téléphone et lire mp3 au moment du reveil
Ce tutoriel est réalisé et proposé par bunjix, développeur d’application sous Android. Vous pouvez voir son blog sur http://bunjix.fr.
On m’a demander il y a quelque temps de faire un complement du tutoriel sur Développez votre propre réveil (Alarme) avec votre android phone. Dans ce tutoriel j’expliquait comment créer un réveil à une heure voulu. Le manque était qu’au réveil, il y avait juste un message qui s’affichait (c’était juste pour illustrer le tutoriel).
On va donc maintenant voir en 2 parties comment ajouter des vibrations et du son.
Pour ajouter des vibrations lors du reveil il faut ajouter ce morceau de code (toujours dans la méthode onReceive):
Vibrator vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
//vibre pendant 1 seconde, puis attend 1/2 secondes avant de recommencer.
vibrator.vibrate(new long[]{0,1000,500,1000,2000}, -1);
// ou vibre pendant 2 secondes.
//vibrator.vibrate(2000);
Explication
- On récupère une instance du service Vibrator.
- Pour faite vibrer le smartphone, il existe plusieurs surcharges de la méthode vibrate:
- Faire vibrer en suivant un pattern : vibrator.vibrate(new long[]{0,1000,500,1000,2000}, -1).
- Ici on fait vibrer de 0 à 1 seconde, puis une pause d’1/2 seconde, puis on recommence pendant 1 seconde.
- Le seconde paramètre correspond au nombre de fois que l’on doit répéter la séquence (-1 pour ne pas répéter).
- Le seconde paramètre correspond au nombre de fois que l’on doit répéter la séquence (-1 pour ne pas répéter).
Pour ajouter un son il faut déjà ajouter dans le répertoire res/raw (ou créer ce repertoire si il n’existe pas encore) le fichier son que vous voulez lire. Ensuite, ajouter le code (toujours dans la méthode onRecive):
final MediaPlayer mp = MediaPlayer.create(context, R.raw.fichier_son);
mp.start();
Handler h = new Handler(){
@Override
public void handleMessage(Message msg) {
if(msg.what==0){
mp.stop();
}
super.handleMessage(msg);
}
};
Message m = new Message();
m.what = 0;
h.sendMessageDelayed(m, 10000);
Explication
- On commence par créer un objet MediaPlayer à partir du context et du fichier de resource.
- Puis on lance le son avec la méthode start();
- Pour aller plus loin, j’ai ajouter un handler qui permet de stopper la lecture après 10 secondes en utilisant un Handler.
Une nouvelle version de notre Widget est disponible sur Android Market, Cliquez ICI ou scannez le code barre pour ne plus rater aucunes news.
Soutenez nous, devenez fan de la page Facebook Android France. Il suffit de cliquer ICI et de cliquer sur le bouton devenir Fan.
© Guy pour Android-France, 2010. |
Permalien |
2 commentaires |
Add to
del.icio.us
Pas de commentaire
Pas encore de commentaire.
Désolé, les commentaires sont fermés pour le moment.