LoginSignup
37
37

More than 5 years have passed since last update.

iosでpush通知を使う手順[parseに登録/push通知の音を設定etc..]【初心者向け】

Posted at

今更ながらpush通知をparse.comを使って実装してみた。
世の中に腐るほどやり方でてるけど、ちょっと詰まったのでメモ。

一応ググると最初に、
Parse.comを使ったiOSデバイスへのプッシュ通知[導入編]が出てくるので重複する所は全てこの記事におまかせする。

Parse.comに登録

まずは、Parseに登録してください。
無料で30req/sまで対応してくれて超素敵。

push通知を行うアプリを登録

アプリ作成.png

誘導に従って登録してください。

AppID/通知用証明書の作成

ここの操作はsafariを使って実行してください。

※一部別ブラウザだと動かないため(個人談)

Parse.comを使ったiOSデバイスへのプッシュ通知[導入編]

1.App IDの作成
2.通知用証明書の作成

まで実行してください。

プロビジョニングファイルの作成

プロビジョニングファイルってなに?って方はこちらを参考にしてみて下さい。

現在既に開発中のアプリとプロビジョニングファイルを紐付けていて、後からpush通知を許可する場合は再度プロビジョニングファイルの更新が必要です。

僕はここでハマってました。。。とほほ

始めて作る方は、下記の手順で。

 プロビジョニング.png

次の画面でApp IDを選択。

appis.png

その後、userとdeviceを紐付けてgenerate実施。

あ.png

※恐らくsafariだと1分程度で完了するかと思います。

その後DLしてください。

Parseに証明書を登録

Parse.comを使ったiOSデバイスへのプッシュ通知[導入編]

4.Parseに証明書を登録

を実施してください。

Xcodeに登録

①Bundle IDの設定

bundle id.png

②プロビジョニングファイルの設定

プリ美女.png

XcodeにParseのSDKを追加

本家のサイトを見ながら実施してみてください。

ちなみに僕の場合はcocoapodsでSDKはインストールしました。
cocoapodsでやるとFacebookのSDKも同時にインストールされます。
それが嫌な方はこちらの記事を参照してみて下さい。

Xcodeに実装/push通知を試してみる

Parse.comを使ったiOSデバイスへのプッシュ通知[導入編]

5.Xcode上で実装
6.Parseからプッシュ通知を送る

を実施してください。

アプリからpush通知を送ってみる

これは最低1台のiphoneとmac上でのシュミレータが必要です。

まずはこのようにchanelを好きなものに設定します。

MBCAppDelegate.h
- (void)application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
    PFInstallation *currentInstallation = [PFInstallation currentInstallation];
    [currentInstallation setDeviceTokenFromData:deviceToken];
    currentInstallation.channels = @[@"test_push"];
    [currentInstallation saveInBackground];
}

その後、pushを行いたいactionの部分に下記を追加。
その他カスタマイズで使えそうなプロパティは公式ドキュメントをみてもらえれば分かります。
今回はメッセージと音楽の設定をします。

 NSDictionary *data = [NSDictionary dictionaryWithObjectsAndKeys:
                          @"好きなアラートメッセージ", @"alert",
                          @"fileのpath", @"sound",
                          nil];
 PFPush *push = [[PFPush alloc] init];
 [push setChannels:[NSArray arrayWithObjects:@"test_push", nil]];
 [push setData:data];
 [push sendPushInBackground];

実機側にもbuildしてシュミレータで上記のアクションを実施してみてください。

実機.png

意図通りの音楽とメッセージが表示されましたか?
さすが天下のparseさん超便利です。

37
37
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
37
37