Facebook Twitter Google Maps RSS
Home 未分類 【iOS mbaas】最短でPush通知を実装する。
formats

【iOS mbaas】最短でPush通知を実装する。

dPush通知を実装する時はmbaasなどのサービスを利用すると実装が簡単です。

今回はNiftyが提供しているNifty Cloud mobile backendを使用した最短の方法を紹介します。

アカウント作成

Nifty Cloud mobile backend(以後NCMB)を使用するためにはNiftyアカウントが必要になります。ログイン画面から新規アカウント作成が行えるので、そこから作成しましょう。

ログイン

新規アカウント作成が完了したらログイン画面よりログインします。

アプリの新規作成

作成するアプリの名称を求められます。ここで設定する名称はwebコンソール画面での管理上の名前なので得に意識する必要はありません。

APIキーとクライアントキー

アプリを一意に識別するユニークキーとしてAPIキーとクライアントキーが発行されます。後々xcodeに記載するため使いますが、webコンソール画面でいつでも参照できるのでメモする必要はありません。

webコンソール

webコンソール画面が表示されます。ここではmbaasにおけるサーバー側の設定を行うことができますが今回はPush通知に関するものだけ設定します。

Push設定

Push機能を設定するために必要な設定は以下の2つです。

  1. アプリ設定→プッシュ通知→プッシュ通知の許可→許可する→保存
  2. アプリ設定→プッシュ通知→iOSプッシュ通知→証明書をアップロード

証明書の作成は本記事では割愛しますがここなどが参考になるかと、通常の証明書と違いAPNsにチェックを入れた証明書が必要な所を注意してください。

mbaasSDKのインストール

ここからxcodeを使って実装作業に入ります。NCMBではSDKを提供しているのでそちらを利用します。SDKはver2.0からGitHubで公開されておりcocoapodsでも提供を行っています。通常のFrameworkでも提供しているので自分にあった環境で組み込んでください。個人的にはソースが見れるcocoapodsからの組み込みがオススメです。
GitHubはこちらから
cocoapodsの解説や詳細なSDKインストールはこちらから

コーディング

やっとコーディングです。プッシュ通知を実装するために必要なものは以下の通りです。

  1.  NCMBSDKの初期化処理
  2. deviceTokenのNCMBへの登録

具体的なコードは以下のみでOKです!

————————–

– (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

//NCMBSDKの初期化

[NCMB setApplicationKey:@”__APPLICATIONKEY__”

clientKey:@”__CLIENTKEY__”];

//Push通知の受信登録処理

UIUserNotificationType type = UIUserNotificationTypeAlert |

UIUserNotificationTypeBadge |

UIUserNotificationTypeSound;

UIUserNotificationSettings *setting = [UIUserNotificationSettings settingsForTypes:type

categories:nil];

[[UIApplication sharedApplication] registerUserNotificationSettings:setting];

[[UIApplication sharedApplication] registerForRemoteNotifications];

return YES;

}

– (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {

//deviceTokenをInstallationクラスに登録する。

NCMBInstallation *currentInstallation = [NCMBInstallation currentInstallation];

[currentInstallation setDeviceTokenFromData:deviceToken];

[currentInstallation save:nil];

}

————————–

__APPLICATIONKEY__と__CLIENTKEY__にはNCMBにアプリを登録した際に表示されたキーを記載します。
webコンソール→アプリ設定→基本→APIキーで再度確認できます。
あとは実機に転送すれば準備は完了です。

webコンソールからプッシュ通知を送信する

webコンソール→プッシュ通知→新しいプッシュ通知からプッシュを送信することができます。
プッシュ配信端末種別でAndroidも選択するとプッシュ通知送信エラーになるので注意してください。
これはAndroid側のプッシュ通知で必要なAPIキーをNCMBに登録していないために送信時エラーが発生するためです。

まとめ

NCMBを使った最短でのプッシュ通知機能の実装いかがでしたでしょうか?NCMBにはアプリからプッシュ通知を送信する機能やプッシュ通知以外のデータやファイルの保存・共有など様々な機能がありますので、試してみるといいかもしれません。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*