テックキャンプ143日目〜プッシュ通知

kobasaです(´ω`*)
プッシュ通知の勉強をしていました。右上に今日の予定が通知されたりするやつです。
この機能実装したいんですけど、Appleのデベロッパー登録が必要で年1万円以上するんですよね。
今はまだ実装方法を見ただけで登録してません。どうしようか悩み中です。

143日目の勉強内容

プッシュ通知の準備

アプリのトップファイルのSigning&Capabilitiesタブの+Capabilityを選択する。
Backgroundを追加し、ModesRemote 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

コメント

タイトルとURLをコピーしました