|
昨日のカウンタ: 今日のカウンタ: |
珍しくこちらの日記でプログラミングのことを書いてみます。
iOSのプッシュ通知を自分のアプリで使おうと思った場合、特に個人開発者の場合だと、サーバを借りるのが負担だったりして躊躇してた例が多いのではないかなと思います。
プッシュ通知を行うには、AppleのAPNS(Apple Push Notification Service)を叩いてあげる必要がありますが、実は半年以上前からGAE(Google App Engine)からプッシュ通知用のAppleを叩けるようになって*1、その辺りの負担が軽くなっています。大量に使うとGAEも別に安くないですが、規模が小さければありだと思います。数人で実験する程度ならGAEの無料の範囲内に収まりますし。
こちらの本にもその辺りの手順やら解説やらを書きましたので読んでみて下さい。(ステマじゃない堂々とした宣伝)
iPhoneというかiOSデバイス側のサンプルはネット上のあちこちにあるのですが、APNSを叩く側のサンプルコードもちょっと書いてみました。GAEの標準もPythonなので(えっJavaとかGoとかは?)、Pythonで書いてみました。いや、ネット上にあるライブラリを呼び出してるだけですが。
from apns import APNs, Payload apns = APNs(use_sandbox=True, cert_file='cert.pem', key_file='key.pem') token_hex = 'b2df4272 aa(ここにデバイストークンを書く)128 2cca1b49'.replace(" ", "") payload = Payload(alert="hi", content=0) apns.gateway_server.send_notification(token_hex, payload) print("sent\n")
例えばこれをsend_to_apns.pyという名前で保存します。
あとはライブラリとしてはPyAPNsをフォークしたもの*2を使います。とは言え、必要なのはapns.pyだけで、これをダウンロードしてsend_to_apns.pyと同じディレクトリに置けば良いです。
後はcert.pemとkey.pemを標準的な方法で生成してから、ターミナルから「% python send_to_apns.py」を実行すれば、あらかじめ動かしておいたiOS上のプッシュ通知用テストアプリに通知が飛ぶのを確認できるはずです。
えっ? cert.pemやkey.pemの作り方がわからない? プッシュ通知用iOSテストアプリのサンプルが欲しい?
● こっちの日記は半分ネタですが、本の方はちゃんと書いてます。m(_ _)m
Before...
◯ さきら [面白そうなネタですねー。ただ、このところ保留させてもらっている事柄が多くて、いつできるかというお話ができません。。。..]
◯ MattBdog [A church was created with the thinking that if Indiana’s b..]
◯ BrianWrora [For decades, Wunsiedel, a German town near the Czech borde..]