kobasaです(´ω`*)
プッシュ通知の勉強をしていました。右上に今日の予定が通知されたりするやつです。
この機能実装したいんですけど、Appleのデベロッパー登録が必要で年1万円以上するんですよね。
今はまだ実装方法を見ただけで登録してません。どうしようか悩み中です。
143日目の勉強内容
プッシュ通知の準備
アプリのトップファイルのSigning&Capabilities
タブの+Capability
を選択する。
・Background
を追加し、Modes
のRemote Notification
にチェックを入れる(アプリを開いてない時の処理を追加する)
・Push Notifications
を追加する。デベロッパー登録したユーザーを紐付けないと選択候補に出ない。
pod 'FirebaseMessaging'
をインストールする。
AppDelegate
ファイルにアプリが「バックグラウンドにいる時/フォアグラウンドにきた時/通知をタップしたとき」などの処理を記述する。
ローカルプッシュ通知の記述
ボタンを押すとプッシュ通知を発火
@IBActionfuncpush(_sender: Any) {
let content = UNMutableNotificationContent()
//プッシュ通知のタイトル・サブタイトル・本文・サウンドを設定
content.title = "[お知らせ]日曜日です"
content.subtitle = "ニュースの時間です"
content.body= "雨が降っています"
content.sound = .default
/*プッシュ通知のリクエストを生成。
identifierは任意のものでよい。triggerで発火タイミングを設定できる*/
let request = UNNotificationRequest(identifier: "localPush", content: content, trigger: nil)
//リクエストを送信
UNUserNotificationCenter.current().add(request, withCompletionHandler: nil)
}
プッシュ通知の表示部分は通知内容と発火タイミングなどの記述で設定できる。
そんなに難しい記述ではなさそう。
トークンを生成してやり取りする記述などまだまだ書くことがあるのですが、今回は端折りました。
オリアプでプッシュ通知以外でデベロッパー登録が必要になったら有料登録するかも。
今回はちょっと様子見。デベロッパー登録半額キャンペーンとか無いすかね?w
コメント