Dans ce tuto je vais utiliser le service vibreur d’android. Ce service permet de faire vibrer le téléphone. L’application que je vais développer est assez simple. Elle se compose d’un champ de saisie dans lequel je vais saisir le temps de la vibration et un bouton pour lancer la vibration du téléphone.
D’abord le xml de notre interface
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Temps vidration en seconde" /> <EditText android:text="EditText01" android:id="@+id/EditText01" android:layout_width="wrap_content" android:layout_height="wrap_content"></EditText> <Button android:text="Button01" android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content"> </Button> </LinearLayout> |
Pour utiliser le vibreur du téléphone, il faut utiliser le service vibrator.Je crée un objet de ce type et je l’instancie avec getSystemService(Context.VIBRATOR_SERVICE).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | public class TestVibrateur extends Activity { //objet qui vas utiliser le service vibrator Vibrator Levibreur; TextView sContenu; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //intanciation de l'objet levibreur Levibreur = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); Button btsauvegarde = (Button) findViewById(R.id.Button01); //.setOnCreateContextMenuListener(this); btsauvegarde.setOnCreateContextMenuListener(this); sContenu = (TextView) findViewById(R.id.EditText01); //action sur le clique du bouton btsauvegarde.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { //récupération de la valeur taper String nombre = sContenu.getText().toString(); //convertion de cette valeur en entier et milisecode int letemp=Integer.parseInt(nombre)*100; //on fait vibrer le téléphone du Levibreur.vibrate(letemp); sContenu.setText("ok"); } }); } |
Il faut également rajouter dans le fichier AndroidManifest la permission android.permission.VIBRATE pour utiliser ce service
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.com.testvibrateur" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".TestVibrateur" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-sdk android:minSdkVersion="3" /> <uses-permission android:name="android.permission.VIBRATE"></uses-permission> </manifest> |
Cette application ne fonctionne que sur un téléphone, sur l’émulateur je ne pense pas que ce soit possible de le tester.
Discutez de ce billet sur le forum










