2017-10-23 13 views

答えて

0

私はこれを自分でやっていませんが、やや可能です。アプリがフォアグラウンドで実行されているか、バックグラウンドで実行されているか、実行されているか閉じているかにかかわらず、MQTTメッセージを受信する単一の接続を開いたままにすることは可能かどうかはわかりませんが、その効果は達成できると思います。

バックグラウンドタスク(アプリがバックグラウンドで実行されている、または閉じられているときに実行される)は、クロスプラットフォーム(Android搭載端末のみ)では常に機能するとは限りません。また、イベントベースのトリガーMQTTは公開します。この理由から、あなたはsetIntervalのようなものに基づいて私の提案を見て、ある点でメッセージをチェックします。接続が常に生きていないため、MQTT接続で大きなキープアライブ間隔(または汚れたセッション)を設定して、メッセージをチェックしている時間間隔と一致させ、QoS 1または2に依存する必要があります)、またはMQTT接続をクローズして再オープンし、保持(より簡単に)に依存します。

アプリケーションがフォアグラウンドまたはバックグラウンドのときに通過するMQTTメッセージが必要な場合は、https://github.com/ocetnik/react-native-background-timersetIntervalのようなものを使用し、ウェイクアップを使用して特定の間隔で細かい粒度のメッセージをチェックできます。アプリケーションが終了してもメッセージが通過する必要がある場合は、https://github.com/vikeri/react-native-background-jobのようなものが必要です.15分以上の精度でコードを実行することができます。

私はあなたに最高の運が欲しいです!

関連する問題