play! scala でiosのpush通知を実装する
play! scalaでapnsを通してiosデバイスにpush通知を実装しまする
ということで証明書関係やとりあえずphpで通知するまでの手順は
iOSでプッシュ通知を実装する方法の超詳細まとめ(前編) | Lancork
ここがめっちゃ詳しかったのでここでやりました。
で、どうやってscalaに書き換えるのかというところから。
下準備
先ほどのリンクで取得した
・Apple Production IOS Push Services
・Entrust.net Certification Authority (2048)
の二つのファイルを一つのp12ファイルにします
やり方はキーチェーンで2つの項目を選択した状態から右クリックで「2個を
書き出す」でひとつのp12ファイルにすることができます。
中身
んで、build.sbtファイルに
"com.notnoop.apns"%"apns"%"0.1.6"
との記述をする
そしたらあとはもう簡単
プッシュ通知を実装したい箇所で
//さっき作ったファイルのパス val APNSCertPath = "/path/to/sakki/tukutta/p12/file" //さっきつくったファイルのパスワード val APNSCertPassword = "password" //APNSオブジェクト生成 val service = APNS.newService .withCert(APNSCertPath, APNSCertPassword).withSandboxDestination.build //プッシュ通知内容詳細 val payload = APNS.newPayload.alertBody("pushpushpush!!!doyaaaaaa").badge(1).sound("default").customField("name", "neel").build //デバイストークン val token = "<<<<<<<<<<<<<<<<<<<<<<Device Token kaitene>>>>>>>>>>>>>>>>>>>>>>" val notif = service.push(token, payload)
最後に、APNSのライブラリをちゃんとインポートするのを忘れずに!
import com.notnoop.apns.APNS; import com.notnoop.apns.ApnsService;
ああとちゃんと依存性のやつをインストールするのも忘れずに!