ニフクラ mobile backend(mBaaS)お役立ちブログ

スマホアプリ開発にニフクラ mobile backend(mBaaS)。アプリ開発に役立つ情報をおとどけ!

Swiftでリッチプッシュを送る

f:id:mbaasdevrel:20181006081638p:plain

Swift4.2を使ってiOS12でリッチプッシュを送信する方法を解説します。リッチプッシュではWebサイトを表示できるので、キャンペーンやプッシュ通知の短いメッセージでは訴求できない内容を表示するのに便利です。

プッシュ通知の実装は同じ

プッシュ通知の実装自体は通常通りです。2018年10月版:Xcode 9.4.1 + Swift 4.1.2 + NCMB iOS SDK 3.0.0でのプッシュ通知実装 - ニフクラ mobile backend(mBaaS)お役立ちブログなどを確認の上、実装してください。

受信時のメソッドを修正

プッシュ通知を受信した時のメソッド didReceiveRemoteNotification にて NCMBPush.handleRichPush(userInfo) を実行します。

func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
  if userInfo.count > 0 {
    print(userInfo)
  }
  
  if (application.applicationState != .active) {
    NCMBPush.handleRichPush(userInfo)
  }
}

管理画面でURLを設定

mBaaSの管理画面でプッシュ通知を作る際に、URLを指定します。これだけでリッチプッシュになります。

f:id:mbaasdevrel:20181006081535p:plain

プッシュ通知を開く

プッシュ通知がデバイスに届き、ユーザが開くとモーダルウィンドウでURLが表示されます。ここで何かアクションができる訳ではありませんが、キャンペーン内容の細かい訴求が可能です。

f:id:mbaasdevrel:20181006081456p:plain

まとめ

リッチプッシュを使うことで、より情報を含んだプッシュ通知が送れるようになります。あまり多用するとユーザに嫌がられる可能性もありますので、ここぞという時に使うと良いでしょう。アップデート情報を掲載したりするのにも使えるはずです。ぜひ活用してください!

プッシュ通知 (iOS) : リッチプッシュ通知 | ニフクラ mobile backend

中津川 篤司

中津川 篤司

NCMBエヴァンジェリスト。プログラマ、エンジニアとしていくつかの企業で働き、28歳のときに独立。 2004年、まだ情報が少なかったオープンソースソフトの技術ブログ「MOONGIFT」を開設し、毎日情報を発信している。2013年に法人化、ビジネスとエンジニアを結ぶDXエージェンシー「DevRel」活動をスタート。