0

アプリがバックグラウンドにある間に、現在の場所で起こったことについてユーザーを更新する必要があります。

私の理解では:

  1. サーバーがプッシュ通知をクライアントに送信すると、クライアントはすぐにそのメッセージを表示します。

  2. 特定の場所があり、特定の半径でメッセージを送信できるようにアプリを設定できます。

したがって、ユーザーの場所で新しいことについてユーザーを更新することさえ可能かどうかを理解したい.

私は2つの可能な解決策を考えていましたが、それらが可能かどうかはわかりません.

1 つ目は、メッセージを表示するかどうかを決定するために、プッシュ通知が表示前に機能を実行できるかどうかだと思います。

:something happened in area x,y - The server initiates a message to all devices. Only the devices within range of x,y and a radius z, would show the message to the users.

おそらく、地域監視サービスがサーバーにメッセージを送信し、サーバーがクライアントにプッシュ通知を送信するかどうかを決定できます...

例えば

The user has entered a defined location, determined by the app. The app sends a message to the server. The server decides if a message is due. 

何か案は?それは可能ですか?

4

2 に答える 2

1

トピックによるプッシュ通知のフィルタリングは、クライアント側ではなくサーバー側で行う必要があります。Apple は、関係のないユーザーにメッセージを送信しないように明確に述べており、アプリが実行されていないときにそれらをブロックすることはできません。さらに、サービスを使用してプッシュ通知を管理している場合、関連性のないメッセージに料金を支払いたくありません。

したがって、デバイスをデータベースに登録するときは、その人が購読しているトピックを登録する必要があります (つまり、ユーザーが受け取る資格のあるトピックのリストを保存します)。次に、プッシュ通知を生成するイベントがトリガーされると、そのトピックに登録されているデバイスにのみ送信されます。多くのプッシュ プラットフォームには、この機能が既に組み込まれていると思います。UrbanAirship と Azure Notification Hubs では、それらのtags機能を使用できます。または、独自のプッシュ サーバーを作成する場合は、自分で開発することもできます。

于 2013-10-15T20:23:33.433 に答える