逆引きAndroid入門 振動器(Vibrator)を使用するには

振動器(Vibrator)を使用するには

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);
    }
}

 


参考ページ