3

クライアントにデータを送信する必要があります。ソケットを使用するよりもプッシュ通知を使用する方がよいかどうかを知りたいです。

I heard some say that sockets are not good because they can stop working if the mobile phone is changing it's IP(anyway how often does this happen).

How reliable are sockets> when would you rather go for push notifications?

4

4 に答える 4

6

プッシュ通知の目的は次のとおりです。

-ユーザーが最初に要求しなかった情報をデバイスに送信する場合(通常、ユーザーがダウンロードするサーバー上に新しいデータがあることを示すping)

-アプリケーションが実行されている保証がない場合。

ソケットは次の目的で使用されます。

-アプリケーションの実行中-別名、ユーザーがダウンロードしたいものをクリックすると、データがソケット経由で送信されます。

また、Androidでは、プッシュ通知は4Kのデータで最大になります。これは、(前述のように)大量のデータを送信するのではなく、通知することだけを目的としているためです。そのためには、とにかくソケットを使用する必要があります。さらに、ソケットがさまざまな理由でデータの送信を停止するという事実に対処する必要があります。ユーザーは、wifiネットワークをホップしたり、トンネルを通過したり、受信が不安定なエリアをドライブしたりします。

于 2012-05-29T22:24:56.880 に答える
2

プッシュ通知は、アプリケーションがバックグラウンドにあるときとフォアグラウンドにあるときの両方で使用できますが、ソケットほど信頼性は高くありません。

一般的に、良い解決策は両方を使用することです。アプリケーションが開いているときにプッシュ通知に応答するには、ソケットを更新するか、サーバーをポーリングします。ただし、プッシュ通知だけに依存することは避けます。アプリを閉じたときに使用してください。

于 2012-05-29T22:14:34.037 に答える
1

プッシュ通知は、アプリが実行されていないときに使用され、UILocalNotificationsとともに、アプリが実行されていないときにアプリに情報を送信する唯一の方法です。

于 2012-05-29T22:11:59.933 に答える
1

携帯電話がIPを変更するとソケットが機能しなくなる可能性があるため、ソケットは良くないと言う人もいます(とにかくこれはどのくらいの頻度で発生しますか)。

確かに通常のシナリオではないものをあなたに与えることができます...

私の地元のパブは無料のwi-fiを提供しています。だから私は友達と飲み物を飲んでいて、私の電話は自動的にパブのWi-Fiに接続します。パブを出て範囲外になったら、モバイルインターネットを有効にしていると、電話はプロバイダーのデータネットワークに接続します。

家に帰る途中、地元の角の店に立ち寄って食料品を買いに行きます。店の上のオーナーの住居用にWi-Fiを設定しましたが、電話はWi-Fi接続の詳細を記憶して接続するように構成されています。私は店を出て、範囲外に出て、私の電話は私のプロバイダーのデータネットワークに再び接続します。

今夜は中華料理が欲しいと思い、家の近くのテイクアウトに立ち寄ります。また、彼らのためにWi-Fiシステムをセットアップすると、私の電話は自動的に彼らのアクセスポイントに接続します。私は店を出て、私の電話は私のプロバイダーのデータネットワークに接続します。

家に帰ると、電話が自分のWi-Fiネットワークに接続します。

したがって、約400ヤード(〜300メートル)の距離で、私の電話は6回異なる接続状態に変化します。

少し冗長になって申し訳ありませんが、それは現実のシナリオです。私のビジネスは、プライベートおよびスモールビジネスのユーザーにITサポートを提供することです。

つまり、アプリが何をするにしても、モバイルテクノロジー上のネットワークは何度も変化する可能性があるという事実に対応する必要があり、状態の変化を監視し、必要に応じて、既存の接続を破棄して再作成する必要があります。

直接ソケット接続の方がすぐに使える場合がありますが、ネットワークの変更には追加の処理が必要です。プッシュ通知には、プッシュサーバーが正しくセットアップされていることを前提として非同期であるという利点があります。

于 2012-05-29T22:49:25.597 に答える