我在Android中測試了一個在React Native中開發的聊天應用程序,我注意到一個奇怪的行爲,僅取決於您如何將應用程序發送給背景。需要使用Home或Back物理按鈕將應用程序發送到後臺狀態時的不同行爲
兩個設備複製錯誤:Device1的與用戶1登錄和設備2與用戶2登錄
案例情況:
- 使用Home鍵從Active發送應用到後臺狀態。
- 使用Back物理按鈕將應用程序從活動狀態發送到後臺狀態。
一旦Device1中的應用程序處於後臺狀態,等待1-2分鐘,直到de WebSocket連接關閉。然後,從User2向User1發送聊天消息。在設備1中再次打開應用程序(將其狀態更改爲活動)
在情況1中,您將收到正確的消息,並且您會看到在聊天視圖以及對話內發送的消息。 在情況2中,消息的接收不一致。您可能會收到它,但它不會顯示在聊天視圖中,並且會話內部會顯示錯誤的順序和/或時間戳。