タグ

2021年9月4日のブックマーク (1件)

  • CountDownTimerがズレるので無理やり直してみた

    AndroidStudio + KotlinでCountDownTimerを使ったアプリを作ったのですが、無視できないレベルで時間がずれる。。。 ここでは誤差を補正する方法について説明します。 問題点最初、時間のカウント処理をするためにCountDownTimerクラスを使ったのですが、カウントする時間に誤差が発生します。 調べてみると2つのタイプの誤差がありました。 常に発生する誤差。1分当たり1~2秒ずれるスリープ時に発生する誤差。1分当たり数秒~数十秒ずれるいずれも時間計測するアプリとしては致命的です。 解決方法結論から言うと以下3つの方法を実装して解決しました。 coroutineでカウント処理を非同期にする誤差を補正するロジックを入れるスリープ時の大きな誤差に対処する順を追って説明します。 1.Coroutineでカウント処理を非同期にする同期処理・非同期処理の概要についてはこち

    CountDownTimerがズレるので無理やり直してみた