0

私は現在、クロスプラットフォーム モバイル アプリ (iOS、Android、WP8) の設計の初期段階にあります。アプリケーションは、基本的に、未知の数のクライアント デバイス間の近接ベースの対話を可能にします。

サーバーで生成されたロケーションベースの近接アラートをクライアントにプッシュできるようにするフレームワークまたはテクノロジーを誰かが推奨できますか? プッシュ通知 (PushSharp を使用したクロス プラットフォーム) は、このための実行可能なオプションでしょうか? または、プッシュ通知は常に、デバイス上の何らかのトースト通知と連携して行われますか?

更新: 30 秒または 1 分の遅延で十分です。

4

2 に答える 2

2

プッシュ通知には、real-time. また、プッシュ通知はデバイスに到達するとは限りません。

位置情報の更新にどれくらいの時間を制限する必要があるかを考える必要があります。また、さまざまなデバイスの GPS の更新速度をテストする必要があります。Nexus 4 でテストしましたが、ほぼリアルタイムではありません。したがって、サーバー側であろうとクライアント側であろうと、アプリケーション全体を通して、あなたのreal-time願いを吹き飛ばすことができます。

ただし、数秒からおそらく 30 秒以上の遅延を許容できる場合、プッシュ通知はうまく機能し、スケーリングも非常にうまくいきます。

編集:

プッシュ通知は常に、デバイス上の何らかのトースト通知と連動していますか?

RAW 通知と呼ばれる概念があり、通知で任意の情報を送信できます。ただし、個人的には、サーバーで準備ができている更新についてクライアントに通知するだけで、アプリケーションが必要とするすべての情報を取得できます。これは、前述したように、プッシュ通知がデバイスに到達することが保証されていないだけでなく、通知に埋め込むことができる情報の量が制限されているためです.

したがって、フローに対する私の提案は次のようになります。

  1. クライアント A はその場所を更新し、それを Web サービスに送信します
  2. Web サービスは、クライアント A から情報を受け取り、クライアント A に関する情報を必要とする他のすべてのクライアントへの通知を準備し、情報を更新する必要があるという情報をプッシュします。
  3. クライアント B は、Web サービスからデータを更新するように指示するプッシュ通知を受け取り、それを実行します。

アプリケーションがバックグラウンド状態にある場合、これはうまく機能します。フォアグラウンドで表示するときは、1 秒ごとにサーバーをポーリングするだけです。クライアントに更新を強制するだけで、まだ通知を受信して​​います。

于 2013-04-14T10:46:07.143 に答える
1

「拡張性」については、Windows Azure Service Bus Notification Hubsも参照してください。現在プレビュー段階であり、Windows 8 Store アプリと iOS のみをサポートしていますが、Android と Windows Phone のサポートは準備中です。

于 2013-04-15T02:53:45.170 に答える