nsaito92 / Frock

0 stars 0 forks source link

スヌーズ機能追加 #19

Closed nsaito92 closed 4 years ago

nsaito92 commented 4 years ago

概要

期待値

対応内容

参考情報

備考

*

nsaito92 commented 4 years ago

Frock スヌーズ機能検討

スヌーズ機能対応について整理する。

作業全体像

要求仕様について検討

基本設計

詳細設計

検討

スヌースの回数を管理する方法

  1. SharedPreferenceで管理する
    • カウント
      • アラーム鳴動開始のたびに回数をカウント
    • リセット
      • アラーム鳴動中に停止ボタンが押された時
      • 所定回数実行された時
      • スヌーズよりも先に鳴動するアラーム設定があった時

処理の流れイメージ

  1. アラームを設定し、予定時間になると鳴動開始する。
    1. 停止ボタンを押された。
      1. スヌーズカウンターをリセット
      2. 従来の次のアラームを設定する処理へ。
    2. 5分後、アラームを終了。
      1. スヌーズカウンターをチェック、5回に満たない場合かどうか
        1. 満たない場合
          1. スヌーズ設定により、次にアラーム予定のCalenderを取得
          2. アラームDB設定で次にアラーム予定のCalenderを取得
          3. どちらが先のCalenderかチェック
            1. スヌーズが先
              1. スヌーズ予定のCalenderをAlarmManagerにセットする
              2. スヌーズカウンターをインクリメントする
            2. DBのアラームが先
              1. スヌーズカウンターをリセット
              2. 従来の次のアラームを設定する処理へ。
        2. 満たしていた場合
          1. スヌーズカウンターをリセット
          2. 従来の次のアラームを設定する処理へ。
  2. DB設定変更時
    1. スヌーズカウンターをリセット
    2. 従来の次のアラームを設定する処理へ。
  3. 端末再起動時
    1. スヌーズカウンターをリセット
    2. 従来の次のアラームを設定する処理へ。

作る必要のある処理

クラス/メソッド検討
シーケンス検討
現状整理
アラーム鳴動終了時、鳴動ダイアログを閉じる
スヌーズ通知について