2014-11-07 61 views
0

我的android应用程序中有一个BroadcastReceiver。 当我的Receiver发生特殊事件时,我想振动。以编程方式振动不停

我知道如何控制震动,但也有2个问题:

1-按下电源按钮时和屏幕下车设备停止振动。 012-2-如果我的振动重复参数设置为1以上,再次打开屏幕后,它再也不会振动。

这里是我的振动的方法:

public void startVibrate(Context context, int repeat) { 
    vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE); 
    int dot = 200;   // Length of a Morse Code "dot" in milliseconds 
    int dash = 500;   // Length of a Morse Code "dash" in milliseconds 
    int short_gap = 200; // Length of Gap Between dots/dashes 
    int medium_gap = 500; // Length of Gap Between Letters 
    int long_gap = 1000; // Length of Gap Between Words 
    long[] pattern = { 
      0, // Start immediately 
      dot, short_gap, dot, short_gap, dot, medium_gap, // S 
      dash, short_gap, dash, short_gap, dash, medium_gap, // O 
      dot, short_gap, dot, short_gap, dot, long_gap  // S 
    }; 
    vibrator.vibrate(pattern, repeat); 
    //vibrator.vibrate(10000); 
} 

这里是振动的方法调用:

controller.startVibrate(context, 0); 
+1

我只是要问......为什么?从用户的角度来看,这似乎是一个坏主意。更不用说电池杀手了。 – Phix 2014-11-07 01:25:50

+0

你确定你想让你的用户使用你的名字制作** VooDoo玩偶**,并在其中放入指甲,因为**你的**设备**电池**已经耗尽**? – 2014-11-07 08:20:02

+0

帅哥请回答,不要评价我的应用程序。 – 2014-11-07 11:36:03

回答