android.osパッケージ - Vibratorクラスを使用します。
- Vibratorインスタンスを取得するには、Activity.getSystemService(VIBRATOR_SERVICE)を呼び出します。
- 振動させるには、Vibrator.vibrate()を呼び出します。
引数が1つだけのメソッドでは、第1引数に、振動させたいミリ秒を指定します。
引数が2つのメソッドでは、第1引数に振動させるパターン配列、第2引数に繰り返しを指定します。
パターン配列には、振動させるまでのミリ秒、振動させるミリ秒を交互に指定します。
※下記サンプルでは、アプリ起動後、
3秒後に1秒間の振動、2秒待って、5秒間の振動、3秒待って、1秒間の振動、
画面にタッチしている間、10ミリ秒の振動となります。 - AndroidManifest.xmlには、以下の定義が必要です。
<uses-permission android:name="android.permission.VIBRATE"/>
サンプルソースコード
public class VibratorTestActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Vibrator vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE);
long[] pattern = {3000, 1000, 2000, 5000, 3000, 1000}; // OFF/ON/OFF/ON...
vibrator.vibrate(pattern, -1);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_MOVE) {
Vibrator vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE);
vibrator.vibrate(10);
}
return super.onTouchEvent(event);
}
}
参考ページ