如何以编程方式在 android 中创建计时器?
How to create a timer in android programmaticaly?
我想在 android 中创建一个意图,它转到计时器应用程序并直接输入数字。我试过这段代码,但它只启动计时器应用程序,但不输入数字。
Intent intent = null;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {
intent = new Intent(AlarmClock.ACTION_SET_TIMER);
intent.putExtra(AlarmClock.EXTRA_HOUR,hour);
intent.putExtra(AlarmClock.EXTRA_MINUTES,minutes);
intent.putExtra(AlarmClock.EXTRA_SKIP_UI,true);
startActivity(intent);
}
你有什么想法吗?
感谢您的每一个回复。
从文档 here 中可以看出,标志 ACTION_SET_TIMER
没有您尝试用作可选请求参数的标志。对于您正在使用的那些,您应该设置 ACTION_SET_ALARM
标志。
AlarmClock.EXTRA_HOUR
和 AlarmClock.EXTRA_MINUTES
用于 AlarmClock.ACTION_SET_ALARM
。
AlarmClock.ACTION_SET_TIMER
仅支持额外的 AlarmClock.EXTRA_LENGTH
、AlarmClock.EXTRA_MESSAGE
和 AlarmClock.EXTRA_SKIP_UI
我想您不想创建一个计时器(a.k.a。一个从开始开始计算秒数的计数器),而是您想要创建一个倒计时。为此,我会使用 CountDownTimer
:https://developer.android.com/reference/android/os/CountDownTimer.html
您甚至可以将其嵌入到您自己的应用程序中,而无需启动外部时钟应用程序。
我想在 android 中创建一个意图,它转到计时器应用程序并直接输入数字。我试过这段代码,但它只启动计时器应用程序,但不输入数字。
Intent intent = null;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {
intent = new Intent(AlarmClock.ACTION_SET_TIMER);
intent.putExtra(AlarmClock.EXTRA_HOUR,hour);
intent.putExtra(AlarmClock.EXTRA_MINUTES,minutes);
intent.putExtra(AlarmClock.EXTRA_SKIP_UI,true);
startActivity(intent);
}
你有什么想法吗?
感谢您的每一个回复。
从文档 here 中可以看出,标志 ACTION_SET_TIMER
没有您尝试用作可选请求参数的标志。对于您正在使用的那些,您应该设置 ACTION_SET_ALARM
标志。
AlarmClock.EXTRA_HOUR
和 AlarmClock.EXTRA_MINUTES
用于 AlarmClock.ACTION_SET_ALARM
。
AlarmClock.ACTION_SET_TIMER
仅支持额外的 AlarmClock.EXTRA_LENGTH
、AlarmClock.EXTRA_MESSAGE
和 AlarmClock.EXTRA_SKIP_UI
我想您不想创建一个计时器(a.k.a。一个从开始开始计算秒数的计数器),而是您想要创建一个倒计时。为此,我会使用 CountDownTimer
:https://developer.android.com/reference/android/os/CountDownTimer.html
您甚至可以将其嵌入到您自己的应用程序中,而无需启动外部时钟应用程序。