私はWhatsAppとまったく同じアプリを作ろうとしていますが、これまでの最大の制限は、ユーザーがしばらくしてからアプリケーションを再起動してConversation View
に行くと、その間に送られた新しいMessage
です。アプリケーションがバックグラウンド/一時停止中または終了中状態をサーバー(API)から回復する必要があり、これにより、新しいメッセージがConversation View
に表示される可能性があります。アプリケーションがBackground/Suspended/Terminated状態になっている場合でも、CoreDataをServer APIと同期させておく方法はありますか?
どのように私は永久に達成することができますサーバのAPIを持つアプリケーションのを同期させますか?がいつでもダウンロードされているように見えないので、WhatsAppのようなアプリがこれを管理していると確信していますしばらくしてからアプリケーションを再オープンしますか?
このタイプの動作を模倣する正しい方法は何ですか?私は本当にこのような「高度な」同期を実行する方法を学びたいと思っています。どこから始めたらいいのか分かりません。再び、私の目標は、ユーザーがConversation View
などを再入力したときに新しいMessage
のサーバダウンロードを避けることです(これは悪いUXなので)
ありがとうございます!
あなたが本当に**完璧な**の同期を取得することはできません。あなたは近づくことができます。プッシュ通知を使用して、取得するメッセージがあることをアプリに知らせます。また、*いくつかのバックグラウンド処理を行ってアップデートを得ることもできます。 – ryantxr
ええ、私はそれが完璧ではないことを認識し始めています。しかし、彼らが属しているViewControllerに入ると、あなたは 'some'データ(Messages)をダウンロードすべきですか?またはAppDelegateコールバックのような前にいつか実行する必要がありますか? – jlstr
アプリをフォアグラウンドにすると、すべてのスレッドのすべてのメッセージを読み込むことができます。その後、会話に入るときにすでに読み込まれています。 – ryantxr