3月 14
8
昨日、Androidアプリの開発者デビューしたのですが、ちょうど今週AppBank Felloのサービスが始まったので早速組み込んでリリースしました。
FelloとAppBankが組んで、iOSとAndroid向けにはじめたサービスで、主な内容は
- プッシュ通知
- メッセンジャー
- インタースティシャル型の広告配信
- 分析ツール
といったところ。
実装してみたのは、これ、爆速オセロ、Quick Reversalです。
良かったらどうぞ。
AppBank独自のサービスとしてはAppBankプラス。 AppBank のサイトでアプリの露出機会を提供してくれるというやつで、AppBank Networkでもやってましたね。 でもそれぞれ別のサービスとしているようなので、それぞれ登録するみたいです。
今回はメッセンジャー以外のサービスを実装しました。
最初にSDKを入手してサポートサイトの通りセッティングしておきます。 fello_config.xmlでこんな設定をしておきます。
<?xml version=”1.0″ encoding=”UTF-8″?> <config> <ApplicationId>アプリケーションIDを記入してください</ApplicationId> <IsTest>デバッグ用アプリとしてビルドする時はtrue、公開アプリとしてビルドする時はfalseを記入してください</IsTest> <NotificationLaunchActivityPackage>com.example.push_sample</NotificationLaunchActivityPackage> <NotificationLaunchActivityName>MainActivity</NotificationLaunchActivityName> <NotificationTitle>プッシュ通知サンプル</NotificationTitle> <NotificationIcon>ic_launcher</NotificationIcon> <EnableNotificationDialog>ダイアログを表示するときはtrue、しないときはfalseを記入してください</EnableNotificationDialog> </config>
アプリケーションIDはAppBank Felloの管理画面でアプリの管理画面に表示されている、app_id : XXXXXの番号を設定します。
ほか、AndroidManifest.xmlはドキュメントに沿って設定を追加しておきます。
あと、ApplicationのonCreateメソッドへしたのコード追加するんですが、今回リリースしたアプリではApplicationクラスを用意してなかったのでActivityの中に書きました。 この辺、いまいちまだAndroidアプリのお作法が分かってないので、間違っているかもしれませんが、分かる人、指摘してください。 とりあえず、Activityに書いても動いてます。
public void onCreate() {
super.onCreate();
IKonectNotificationsCallback callback = new NotificationsCallback();
KonectNotificationsAPI.initialize(this, callback);
KonectNotificationsAPI.setupNotifications();
}
まず、プッシュ通知
これは、ローカル通知とリモート通知ができるサービスです。 ローカル通知はFelloの通知を使うまでもないのですが、FelloのSDKを使うと楽に実装できます。 こんな感じで簡単。
KonectNotificationsAPI.scheduleLocalNotification(“通知メッセージだよ!”, new Date(time), “msg1”);
最後のパラメータは、通知IDみたいなものらしい。
同じIDで登録すると上書きされるらしいです。 通知を削除するときには、このIDで削除の対象を指定するようです。 この辺は試してないですが。
通知に出すタイトルやアイコンは別途定義ファイルで予め定義しておきます。
かんたんですねぇ。
リモート通知の方はローカル通知と同じ定義ファイルで設定をしておくだけ。 コーディング不要です。
リモート通知を出したいときに、 AppBank Felloの管理画面から時間指定でメッセージを発信するだけ。 リモート通知の時は管理画面でアンコンを指定します。 サイズは114×114だけみたいです。
コーディングしないで通知できちゃうんだから楽ですねぇ。 ちょっとハマった点があったのでひとつ注意。 fello_config.xmlで通知のダイアログ表示をする設定にしていればいいのですが、表示しない設定の場合、アイコンを設定しておかないと通知が表示されないみたいです。ローカルでもリモートでも同じです。 ログを見てると受信してるみたいなのに表示がされなくてしばらく悩みました。
ダイアログ表示というのは、通知の時にポップアップで表示されるダイアログです。 ダイアログの表示をしない場合は、通知領域の表示だけになります。
使ってみて、通知機能で対応して欲しい機能としてリモート通知のローカライズにぜひ対応してほしいです。 お願い、AppBankさん、Felloさん。 海外にも配信しているアプリだと、日本語の通知と英語の通知を相手に合わせて表示してあげたいです。
でもリモート通知が簡単にできるのはいいですね。 昨日リリースしたアプリで、リリース直後にちょっとした問題があって、早速、リモート通知でごめんなさい通知に使いました。 リリース直後だったので、ダウンロードしている人も数人しかいなかったし、対策もすぐにできたんですが、いざというときにも便利ですね。
あと、通知からのアプリ起動を検知して独自の処理を行う機能もあるのですが、これがうまく動かなかったです。 アプリが起動している時はちゃんと動いてくれてるみたいですが、バックグラウンドに回った時には呼ばれてないみたいだった。 もしかすると、上の方に書いた初期処理を書く場所が悪いのかな。 今回は使う予定がなかったので、とりあえず、放置しちゃいましたが。 Applicationクラス作らないとダメなんでしょうか?
つぎに広告
広告はコーディング不要。 SDKを組み込んでおけば、アプリ起動時に勝手に表示されます。 任意のタイミングでインタースティシャル型の広告を出すには
KonectNotificationsAPI.beginInterstitial();
KonectNotificationsAPI.beginInterstitial();
お、嬉しい。あと、ご意見ありがたい!海外ユーザーに対する機能のニーズは増えてます。 AppBank Felloを導入してみた、こりゃ便利。 http://t.co/qy62WOCWd5
[T-Blog] AppBank Felloを導入してみた、こりゃ便利。 http://t.co/MqblH4F141
@comtaro @appbank
昭和の雰囲気の中、飲みました!
明日も仕事。
ファイト
@prosmax @comtaro 明日もがんばろう!