top of page

アプリを手作りしています

ホーム: ようこそ!
ホーム: Blog2

[SwiftUI]What I wear counter/着た回数カウンタ - (7) Local Notification

  • handmadeapp
  • 2020年2月17日
  • 読了時間: 1分

更新日:2020年2月18日

着た回数カウントアプリの最後の機能、Notificationを設定します。


要望

「着たものの登録を忘れていたら、指定の時間にリマインドを受信できること」


機能要件としては、

①最後に着たものを登録した日付を記録しておく

②リマインドを送付する時間、リマインド送付On/Offを設定できる

③指定の時間までに、その日に着たものを登録していなければNotificationを表示する

を順に設定していく。



①最後に着たものを登録した日付を記録しておく

「Register what I wear today」ボタンタップ時のアクションに、

その日の日付を記録する機能を追加。データはUserDefaultsに保存。

Date()をUtilityで設定したdateFormatを利用して、yyyy/MM/ddのStringに。

表示は、以下のようにUserDefaultsを参照。



②リマインドを送付する時間、リマインド送付On/Offを設定できる


TimeSettingViewは以下の通り。


設定した時間は、UserDefaultsに設定。

・"alertHour"(integer)

・"alertMinute"(integer)


また、こちらの記事を参考に、AlertTimeクラスを作成。

LocalNotificationManager()については、③で。



③指定の時間までに、その日に着たものを登録していなければNotificationを表示する

LocalNotificationManagerは、こちらの記事を参考に。

LocalNotificationManagerクラス。

add(request)の前に、"lastRegisterDate"が今日の日付かどうかを確認し、

今日、まだ着たものを登録していない場合にのみ、Notificationを表示するように。


AppDelegate.swiftに以下を追加。


TimeSettingViewでToggleボタンをOnにした際に、以下のアラートが表示される。


以降、指定した時間にNotificationが表示される。


Comments


©2020 by Handmade App. Proudly created with Wix.com

bottom of page