Closed jca02266 closed 14 years ago
MessagingController.java の4600行付近に Notification クラスのインスタンスがある。これの noftif オブジェクトのvibrate フィールドに
notif.vibrate = new long[]{0, 200, 100, 200, 100, 200};
などと指定する。この配列は、DELAY_TIME,VIBRATE_TIMEの繰り返しを示すらしい。
デフォルト値は不明だが、通知回数や時間の設定はないので、この通知パターンをたくさん書き並べるしかないのか?
何も変わらなかった。デフォルトのバイブパターンは、ブーッブーって感じだが
notif.vibrate = new long[]{0, 200, 100, 200, 100, 200, 100, 200, 100, 200, 100, 200, 100, 200};
notifMgr.notify(account.getAccountNumber(), notif);
などとしても変わらなかった。
と思ったら、動いてる。上記はためしに常にバイブするようにしていたのだけど、設定の「バイブレーション」をチェックしたら元のブーッブーッ(バイブ2回)に戻ってしまうので何かのフィールド設定に影響されているのか?
200はもう少し大きな数字でもよさそう。いくつかパターンを登録して設定でパターンと回数を指定できればいいか?
以下に、DEFAULT_VIBRATE を設定した場合に vibrate が無視されると書いてました。
Use the default notification vibrate. This will ignore any given vibrate. Using phone vibration requires the VIBRATE permission.
http://developer.android.com/intl/ja/reference/android/app/Notification.html#DEFAULT_VIBRATE
ブランチ vibrate-pattern-preference (SHA: a8951f165abbb78182248bd987eac68231bc445e) にて、設定を追加した。
動作確認をして、まずは本家に取り込み&レビューを依頼することとする。
実現方法をまずは調査