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

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

コミュニティより:iOSのプッシュ通知音を変更してみよう

mobile backendを利用されている方向けのユーザコミュニティから役立ちそうな質問を取り上げます。今回はプッシュ通知のサウンド設定についてです。

通知音の設定に関して · Issue #71 · NIFCLOUD-mbaas/UserCommunity

iOSプッシュ通知のサウンドを変更する

iOSではプッシュ通知のサウンドをカスタマイズすることができます。かといって自由に何でもという訳ではなくいくつかの条件があります。

  • フォーマットは以下の4つです。
  • Linear PCM
  • MA4 (IMA/ADPCM)
  • µLaw
  • aLaw
  • 流れる時間は30秒以内

例えば既存の音楽ファイルは次のコマンドで変換できます。

$ afconvert /System/Library/Sounds/Submarine.aiff ~/Desktop/sub.caf -d ima4 -f caff -v

詳細はAppleのLocal and Remote Notification Programming Guide: Registering, Scheduling, and Handling User Notificationsをご覧ください。

設定してみる

上の条件をクリアしたサウンドファイルが作れたら、iOSプロジェクトに登録しましょう。サウンドファイルをSupporting Filesの中に放り込みます。

ファイルをドロップした後の選択肢で、アプリにチェックを入れてコピーします。

これで処理は完了です。

iOSアプリからプッシュ通知を作成する場合

iOSアプリからObjective-Cでプッシュ通知を作成する場合は次のコードになります。

NCMBPush *push = [[NCMBPush alloc] init];

NSDictionary *data = @{@"contentAvailable":[NSNumber numberWithBool:NO],
                       @"badgeIncrementFlag":[NSNumber numberWithBool:YES],
                       @"sound":@"sub.caf"};//アプリのメインbundleにsub.cafという音声ファイルを指定する
[push setData:data];
[push setMessage:@"testSendPush"];
[push setImmediateDeliveryFlag:true];
[push setPushToIOS:true];
[push sendPushInBackground];

soundで先ほど登録したcafファイルを指定します。

管理画面から指定する場合も同様に音声ファイル名を指定します。

これでプッシュ通知が来ると、デフォルトとは異なる音が流れるはずです(ミュートやバイブ設定になっていないことを確認してください)。


ユーザコミュニティにはこの他にもたくさんの質問、Tipsが投稿されています。ニフティクラウド mobile backendを使われる際にはぜひチェックしてください。

NIFCLOUD-mbaas/UserCommunity

f:id:mbaasblog:20180927115226p:plain