ユーザーがボタンを押した後、指定された時間でアラートをトリガーするアプリが必要です。ドキュメンテーションを見ると、私が必要としているのは Handler のように見えます。
しかし、postDelayed を使用しているにもかかわらず、ルーチンがすぐに実行されていることがわかりました。明らかな何かが欠けていることは知っていますが、それを見ることができません。以下のコードでは、1 分待つのではなく、すぐに電話を振動させるのはなぜですか?
...
final Button button = (Button) findViewById(R.id.btnRun);
final Handler handler = new Handler();
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
...
handler.postDelayed(Vibrate(), 60000);
}
});
...
private Runnable Vibrate() {
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(300);
return null;
}