2

ユーザーのアカウントに Cloud to Device Messaging (C2DM) がない場合、C2DM が機能しないというのは本当ですか?

その場合、Google アカウントなしでプッシュ通知を行うにはどうすればよいですか?

4

1 に答える 1

14

プッシュ通知を送信するためのさまざまな手法を以下に示します。

  • OS2.2以降のAndroidCloudto Device Messaging(C2DM)
  • OS2.2より前のデバイスのその他の手法。

Cloud to Device Messaging(C2DM)OS2.2 +:Androidプラットフォームで使用される標準のプッシュ通知方法は、Android Cloud to Device Messaging(C2DM)と呼ばれます。このサービスは、サーバーがアプリにサーバーに直接接続して更新されたデータをフェッチするように指示するために使用できる、シンプルで軽量なメカニズムを提供します。

C2DMを使用すると、Androidアプリに軽量メッセージを送信できます。メッセージングサービスは、メッセージを介して多くのユーザーコンテンツを送信するようには設計されていません。むしろ、アプリケーションがそれをフェッチできるように、サーバーに新しいアラートがあることをアプリに通知するために使用する必要があります。

C2DMの制限:

  • メッセージサイズの制限は1024バイトです。
  • Googleは、送信者が送信するメッセージの総数と、送信者が特定のデバイスに送信するメッセージの数を制限しています
  • C2DMは、メッセージの配信または順序について保証しません。
  • C2DMでは、ユーザーはモバイルデバイスでGoogleアカウントを設定する必要があります。
  • C2DMには、Android 2.2以降を実行し、Marketアプリケーションもインストールされているデバイスが必要です。

サーバーは

  • HTTPSを使用してC2DMサーバーと通信できます。
  • クライアントとのコミュニケーションが可能。
  • C2DMサーバーへのHTTP要求を実行できます。
  • 必要に応じてリクエストを処理し、データをキューに入れることができます。たとえば、指数バックオフを実行できる必要があります。
  • ClientLoginAuthトークンとクライアント登録IDを保存できます。ClientLogin Authトークンは、メッセージを送信するPOSTリクエストのヘッダーに含まれています。このトピックの詳細については、「インストールされているアプリケーションのClientLogin」を参照してください。サーバーはトークンを保存し、定期的に更新するポリシーを持っている必要があります。

OS2.2より前のデバイスのその他の手法:

  • プッシュではなくポーリング
  • SMS
  • 永続的なTCP/IP
  • サードパーティ製品

プッシュではなくポーリング:Androidアプリは、バックグラウンドのローカルサービスからの新しいメッセージについてサーバーを定期的にポーリングできます。ポーリングする頻度が高いほど、リアルタイムプッシュに近づきます。

  • Adv:実装が簡単です。
  • 不利な点:リアルタイムではありません。バッテリーが切れます。

SMS:AndroidアプリはAndroidスマートフォンのテキストメッセージを傍受できるため、通知があったときにサーバーがSMSを送信できる場合、AndroidアプリはSMSを受信し、サーバーで新しいデータを確認できます。

  • Adv:実装が簡単です。完全にリアルタイムの更新。
  • 不利な点:費用がかかる可能性があります。

エリクソンのラボは、最大2000Smsの送信を可能にするホステッドサービスを提供しています。

永続的なTCP/IP:Androidアプリは、サーバーとの長期間のほとんどアイドル状態のTCP / IP接続を開始し、キープアライブメッセージを送信することでサーバーを維持します。サーバーに何か新しいものがあるときはいつでも、TCP接続を介して電話にメッセージを送信します。

  • Adv:完全にリアルタイムの更新。
  • 不利な点:電話側とサーバー側の両方で信頼できるサービスを実装するのは難しい。Android OSは、メモリが不足しているときにサービスを強制終了できることが知られているため、通知サービスは簡単に消えてしまう可能性があります。電話がスリープ状態になるとどうなりますか?すべてのアプリが同じ手法を使用していると想像してみてください。バッテリーを消耗するオープン接続がたくさんあります。

サードパーティ製品

  • アーバンエアシッププッシュ:大きな欠点は、ユーザーがAirMailアプリをデバイスにインストールする必要があることです。
  • 執事プロジェクト
  • xtify
  • pushdroid.org
于 2011-11-25T13:58:44.603 に答える