プッシュ通知を簡単に送れるバックエンドツール
「ニフティクラウド mobile backend 」
Monacaと連携可能なバックエンドのツールの中でも、気軽でかつ簡単に利用できるのが「ニフティクラウド mobile backend 」(通称mBaaS)です。様々な機能が用意されていますが、その中でも特にプッシュ通知の利用がおすすめです!プッシュ通知の受信機能を提供するCordovaプラグインが用意されているので、その導入と簡単なコーディングだけで実装可能です。サーバーサイドの開発が一切不要でアプリにプッシュ通知を組み込めるため、開発コストを飛躍的に削減できます。
mBaaSを使えばプッシュ通知は簡単に導入可能!
でも、iOSアプリは設定が何かと面倒…
先に触れたように、mBaaSを使うとプッシュ通知の導入は非常に簡単です。ただし、iOSアプリの場合、認証に必要な証明書の設定など、少々複雑で気を遣うべき作業があります。Androidアプリと比べるとその差は一目瞭然です。プッシュ通知に関しては、開発環境で試すだけでも「有料」のApple Developer Program への登録が必要であるため、機能の実装自体はmBaaSで簡単に実施できても、実際にプッシュ通知を送り届けるところまでを実現させるには、非常に高いハードルがあります。しかしそのハードルの高さこそが、App Store のアプリ品質を担保してると言えるかもしれません。
そこで、まずはiOSのプッシュ通知配信の仕組みについて考えてみましょう。
mBaaS×iOS のプッシュ通知配信の仕組みと
おさえるべきポイント
mBaaSを使用してプッシュ通知を実装した場合、どのような仕組みでプッシュ通知が配信されているのでしょうか?また、配信の際に必要な設定とは具体的にどのようなものがあるのでしょうか?
図の様に「APNs」(Apple Push Notification Service)というAppleのプッシュ通知サーバーを介して、①~⑤の流れでプッシュ通知が配信されます。配信に必要な設定は、クライアント側(Monaca)に設定する証明書・プロビジョニングプロファイル・Bundle ID、バックエンド側(mBaaS)に設定するプッシュ通知用の証明書があります。これらには開発環境用のものと本番環境(リリース)用のものがそれぞれ2種類あり、設定を行う際には注意すべきポイントが3つあります。
- 同じ環境(開発環境/本番環境)の組み合わせで設定する必要がある
- 同じAppID(BundleID)に紐付く組み合わせで設定する必要がある
- 有効期限が1年間であるため、期限より前に証明書の更新(再設定)が必要である
正しい組み合わせで尚かつ有効な証明書が設定されていなければ、プッシュ通知を配信することはできません。
設定を誤ってプッシュ通知を送るとどうなるのか?
よくある間違い例として、mBaaS側に設定したプッシュ通知用証明書が開発用のまま、アプリを本番用にビルドした状態でプッシュ通知を配信した場合が考えられます。
この場合はAPNsから「 invalidToken 」というエラーが返却され、プッシュ通知は配信されません。
<対処法>invalidToken エラーが発生してしまったら
invalidTokenエラーの対処方法は状況により異なります。エラーとなった端末情報を削除しなければ改善されない場合もあれば、設定を見直すだけでエラーが解消される場合もあります。また、invalidTokenエラーだけでなく、複数のエラーが同時に発生するなんてことも…。こういったエラーの解消方法について悩まれている方は多いのではないでしょうか?そんなときは、ぜひ「mBaaSお役立ちブログ」をチェックしてみましょう!
mBaaSお役立ちブログから厳選記事をピックアップ!
プッシュ通知に関連したトラブルの解消に役立つ記事をたくさんご用意しています。ブログ記事の情報を有効活用して、正しいプッシュ通知の運用を実現しましょう。