2017-10-31 13 views
0

おはよう!閉じたアプリでチャットメッセージを保存

私はWhatsAppのように見えるチャットアプリケーションを開発しています。受信したメッセージをユーザーのモバイルデバイスに保存する必要があります。それまでは、ユーザーがモバイルでプッシュ通知を受け取ったときにメッセージを保存していたため、すべてがOKでしたが、アプリケーションが閉じられたときに問題が発生しました。プッシュ通知が受信プッシュイベントをトリガーしないためですプッシュを送るためにOnesignalを使用しています)。

私はこれをどのように行うことができますか、つまり通知を受けて、閉じたアプリケーションでも処理する方法を知りたいと思います。 SpotifyはSpotifyを別のデバイスに接続すると自動的に携帯電話にアプリケーションを開くようにしているので、これを行う必要があると思う。

私の質問は、アプリケーションを閉じた状態でイベントを処理する方法、または特定のイベントに応じて強制的に開く方法です。

私はIonic 1とAngular.jsの技術を使用しています。プッシュ通知の場合、私はOneSignalプロバイダを使用しています。

お気軽にお越しいただき、ありがとうございました。ありがとうございました!

+0

デバイス上にファイルを保存することをお勧めします。新しい通知が到着したら、メッセージをファイルに追加します。ファイルからメッセージを読み取り、新しい通知が到着したときに更新します。 – Barns

+0

プッシュ通知を使用してデータを配信することはできません。保証されていません。あなたのアプリが起動したら、サーバーに新しいメッセージがないかどうかチェックする必要があります – Paulw11

答えて

0

あなたが説明していることを行うことができないと確信しています。 iOS 9には「バックグラウンドプッシュ」機能が導入されています。これにより、アプリが終了してもプッシュで起動されたペイロードを受信できますが、それは多くのメッセージではなく新しい(たとえば)オンライン雑誌の新しい版をダウンロードするためです。

これらの2つのユースケースの違いは、雑誌を購読している場合は、インターネットに接続しているときに最新の問題を自動的にダウンロードして、読んでいるときに読むことができます飛行機で/電車に乗ったり、何でも。とにかくインターネットに接続していないとチャットアプリはかなり役に立たないので、新しいメッセージが事前にダウンロードされている必要はありません。

私はそれをすることはできますが、とにかくインターネットを持たないシナリオが多すぎるため、ユーザーがアプリを開いたときに完全なメッセージ履歴を残さずに済むようにするのがベストプラクティスです(プッシュ通知配信は追跡や保証されていません)とにかく、新しいメッセージをダウンロードするためにアプリが起動したら、何らかのクエリを実行する必要があります。

アプリが開いている間に新しいメッセージをチェックしてダウンロードしているコードが既にある場合は、それは素晴らしいことです。しかし、閉鎖されている場合は、未読メッセージなどをダウンロードするために起動時に何らかのクエリを実行するだけで済みます。

関連する問題