¿Cómo vibrar el dispositivo número n de veces a través de la programación en android?

puede alguien decirme cómo vibrar el mismo patter 5 veces como este mi patrón

long[] pattern = { 0, 200, 500 };

quiero que este patrón se repita 5 veces

 Vibrator vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); vibrator.vibrate(pattern , 5); 

Encontré la solución, era muy simple:

 long[] pattern = { 0, 100, 500, 100, 500, 100, 500, 100, 500, 100, 500}; vibrator.vibrate(pattern , -1); 

Su código debe hacer el truco. Sólo asegúrate de tener <uses-permission android:name="android.permission.VIBRATE"/> en el archivo AndroidManifest.xml .

Lo siguiente funciona para mí:

 if(vibration_enabled) { final Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); if(v.hasVibrator()) { final long[] pattern = {0, 1000, 1000, 1000, 1000}; new Thread(){ @Override public void run() { for(int i = 0; i < 5; i++){ //repeat the pattern 5 times v.vibrate(pattern, -1); try { Thread.sleep(4000); //the time, the complete pattern needs } catch (InterruptedException e) { e.printStackTrace(); } } } }.start(); } } 

El método de vibración sólo inicia la vibración, pero no espera hasta que se ejecute.

Además de las soluciones dadas anteriormente, he creado mi propio patrón de vibración donde puedo controlar el tamaño de duración entre las vibraciones. startVibration () crea un patrón de vibración regular continuo durante un minuto.

stopVibration () – Termina la vibración o hace una pausa en el counterTimer interrumpiendo así el patrón de vibración.

 public void startVibration(){ counterD = new CountDownTimer(60000, 1000) { public void onTick(long millisUntilFinished) { time = (int) (millisUntilFinished / 1000); txt.setText("Muttiple Pattern vibration! ("+String.valueOf(time)+")"); int[] timeLapse = {58, 55, 52, 49, 46, 43, 40, 37, 34, 31, 28, 25, 22, 19, 16, 13, 10, 7, 4, 1}; //Log.d("Time count", String.valueOf(time)); Log.d("Timer show", String.valueOf(time)); for (int k = 0; k < timeLapse.length; k++) { if (time == timeLapse[k]) { ((Vibrator) getSystemService(VIBRATOR_SERVICE)).vibrate(1000); } } } public void onFinish() { } }.start(); } public void stopVibration(){ counterD.cancel(); } 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.