正在构建一个“时间跟踪”应用程序,我希望用户能够在通知栏(如果该应用程序处于关闭状态)以及在应用程序+通知栏中(如果该应用程序处于打开状态)看到/停止计时器。
对于通知,我设法在其中创建了一个带有计时器的RemoteView,并且计时器按预期进行了更新,但是我很难从中获取其他额外逻辑的滴答声(例如:发送警告时间不多了。
我做了什么:
val remoteViews = RemoteViews(packageName, R.layout.timer_remote_view)
remoteViews.setChronometer(R.id.chronometer, SystemClock.elapsedRealtime(), null, true)
val chrono = remoteViews.apply(this, null).findViewById<Chronometer>(R.id.chronometer)
chrono.setOnChronometerTickListener {
//this doesn't get called
Log.d("tick",it.base.toString())
}
//{code here for displaying the notification}
我要避免的是同时运行两个计时器,一个在RemoteView中,另一个在我的Activity中。
从我在Chronometer.java类中设法挖掘的内容来看,mVisible
和isShown()
似乎是错误的,并且不允许调度计时器滴答声,无论如何我都知道天文钟刻度?