mayaの実験場

この人生は沼だらけ

iOSでプッシュ通知の設定状況を確認したかった

f:id:xx_maya_xx:20190923155843p:plain

プッシュ通知でUITabBarのボタンとかに赤いバッチをつけたり、
ステータスの変更を反映したいとか。
なので通知を切られてると激しく困るのです。

まずこれを試しました。 qiita.com

バージョン違いで怒られた…珍しくxcodeのfix提案でフィックスできたけど、
設定→通知→アプリごとの通知で意図的に設定したのが、反映できない。
そこを監視できないと正直意味がないんだ。

dealforest.hatenablog.com

うーん…AppDelegateじゃないと、ダメ?

最終的に

teratail.com

これをバージョンで読み替えて

qiita.com

フラグがわからなかったのでここで補完

完成品

if (UIApplication.shared.currentUserNotificationSettings?.types.contains( UIUserNotificationType.alert))! {
} else {
     // アラートメッセージ表示、別途リサーチしてください
}

失敗

if UIApplication.shared.currentUserNotificationSettings?.types != UIUserNotificationType.alert {
     // イコールつけるには型の食い違いで怒られそうなんだけど怒られなかった
}

これで更に、最初のリンクの「アプリの設定画面へ飛ぶ」を実装したいのだけれど
プッシュ通知のみならずGPSも設定してて欲しいので、そちらが可能かどうかをリサーチして
見つからなければ合わせない…。