バイブレーションの操作はVibratorクラスを使いますが、OSのシステムサービスとして提供されていますので、インスタンスはgetSystemService()で取得して操作します。機能は下記の3種類です。時間の単位はすべてms(ミリ秒)です。パターンはOFFから始まり、ON、OFF・・・と任意の回数で自由に設定できます。
- 1回だけ指定時間ONにする
- 指定のON/OFFパターンを1回だけONにする
- 指定のON/OFFパターンを停止されるまでずっと繰り返す
例)上記の3種類で動かす場合
long pattern[] = {0, 100, 50, 200}; // Off, On, Off, On [ms]
Vibrator vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE);
switch (type) {
case 1:
vibrator.vibrate(200); // [ms]
break;
case 2:
vibrator.vibrate(pattern, -1); // No repeat
break;
case 3:
vibrator.vibrate(pattern, 0); // Start repeat
break;
case 4:
vibrator.cancel(); // Stop repeat
break;
}
パーミッションの設定が必要です。
<uses-permission android:name="android.permission.VIBRATE" />
パーミッションはPermissionsタブから簡単にブラウズして追加できます。
参考:Android Developers:Vibrator
参考:Android Developers:Context - getSystemService()

No comments:
Post a Comment