参考:http://blog.csdn.net/diy4man4/article/details/19680785
震动帮助类:VibrateHelp.java:
import android.content.Context;
import android.os.Vibrator;
/**
* 震动帮助类
* androidManifest.xml中加入 以下权限
* <uses-permission android:name="android.permission.VIBRATE" />
*/
public class VibrateHelp {
private static Vibrator vibrator;
/**
* 简单震动
* @param context 调用震动的Context
* @param millisecond 震动的时间,毫秒
*/
@SuppressWarnings("static-access")
public static void vSimple(Context context, int millisecond) {
vibrator = (Vibrator) context.getSystemService(context.VIBRATOR_SERVICE);
vibrator.vibrate(millisecond);
}
/**
* 复杂的震动
* @param context 调用震动的Context
* @param pattern 震动形式
* @param repeate 震动的次数,-1不重复,非-1为从pattern的指定下标开始重复
*/
@SuppressWarnings("static-access")
public static void vComplicated(Context context, long[] pattern, int repeate) {
vibrator = (Vibrator) context.getSystemService(context.VIBRATOR_SERVICE);
vibrator.vibrate(pattern, repeate);
}
/**
* 停止震动
*/
public static void stop() {
if (vibrator != null) {
vibrator.cancel();
}
}
}
注:
1)权限:< uses-permission android:name=”android.permission.VIBRATE” />
2)向vibrate()方法传递多个参数
//等待1秒,震动2秒,等待1秒,震动3秒
long[] pattern = {1000, 2000, 1000, 3000};
//-1表示不重复, 如果不是-1, 比如改成1, 表示从前面这个long数组的下标为1的元素开始重复.
vibrator.vibrate(pattern, -1);
3)注意振动时间如果太短,会体验不到振动.