この方法で画面がいつオフになるかを検出できます:
IntentFilter intentFilter = new IntentFilter(Intent.ACTION_SCREEN_ON);
intentFilter.addAction(Intent.ACTION_SCREEN_OFF);
registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
Toast.makeText(MainActivity.this, "Screen off", Toast.LENGTH_SHORT).show();
} else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
Toast.makeText(MainActivity.this, "Screen on", Toast.LENGTH_SHORT).show();
}
}
}, intentFilter);
同じことをする必要がありますが、 でToast
設定できる特定の秒後に が表示される必要がありますtimePicker
。したがって、画面がオフになるたびに、10 秒を設定すると、10 秒後にトーストが表示されます。どうすればできますか?サービスは必要ですか? 手動で次のようなことができます:
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
// here the code
}
}, 30 * 1000);
しかし、タイムピッカーで秒を設定できればもっと良いでしょう。ありがとう