<uses-permission android:name="android.permission.VIBRATE"/>
Vibrator vb = (Vibrator)getSystemService(Service.VIBRATOR_SERVICE);
abstract void cancel():
关闭或者停止振动器;
abstract boolean hasVibrator():
判断硬件是否有振动器;
void vibrate(long milliseconds):
控制手机振动为milliseconds毫秒;
void vibrate(long[] pattern,int repeat):
指定手机以pattern指定的模式振动;
例如:pattern为new int[200,400,600,800],就是让他在200,400,600,800这个时间交替启动与关闭振动器!
而第二个则是重复次数,如果是-1的只振动一次,如果是0的话则一直振动。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获得系统的Vibrator实例
myVibrator = (Vibrator) getSystemService(Service.VIBRATOR_SERVICE);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_hasVibrator:
Toast.makeText(this, myVibrator.hasVibrator() ? 当前设备有振动器 : 当前设备无振动器,Toast.LENGTH_SHORT).show();
break;
case R.id.btn_short:
myVibrator.cancel();
myVibrator.vibrate(new long[]{100, 200, 100, 200}, 0);
Toast.makeText(this, 短振动, Toast.LENGTH_SHORT).show();
break;
case R.id.btn_long:
myVibrator.cancel();
myVibrator.vibrate(new long[]{100, 100, 100, 1000}, 0);
Toast.makeText(this, 长振动, Toast.LENGTH_SHORT).show();
break;
case R.id.btn_rhythm:
myVibrator.cancel();
myVibrator.vibrate(new long[]{500, 100, 500, 100, 500, 100}, 0);
Toast.makeText(this, 节奏振动, Toast.LENGTH_SHORT).show();
break;
case R.id.btn_cancle:
myVibrator.cancel();
Toast.makeText(this, 取消振动, Toast.LENGTH_SHORT).show();
}
Thanks all . Happy Everyday…
本文首发于我的微信公众号,更多干货文章,请扫描二维码订阅哦: