talk-android/app/src/main/java/com/nextcloud/talk/ui/dialog
Marcel Hibbe 6e1114d4d8
fix TooManyRequestsException
By using
networkMonitor.isOnline.first()
the function
unregisterNetworkCallback
was triggered, which sometimes causes the ConnectivityManager$TooManyRequestsException.

So each time isOnline.first() was called, the callbackFlow would:
- Register a new NetworkCallback.
- Emit a value and cancel the flow.
- Unregister the NetworkCallback.

The exception was:
Exception android.net.ConnectivityManager$TooManyRequestsException:
  at android.net.ConnectivityManager.convertServiceException (ConnectivityManager.java:3771)
  at android.net.ConnectivityManager.sendRequestForNetwork (ConnectivityManager.java:3960)
  at android.net.ConnectivityManager.sendRequestForNetwork (ConnectivityManager.java:3967)
  at android.net.ConnectivityManager.registerNetworkCallback (ConnectivityManager.java:4349)
  at android.net.ConnectivityManager.registerNetworkCallback (ConnectivityManager.java:4319)
  at com.nextcloud.talk.data.network.NetworkMonitorImpl$isOnline$1.invokeSuspend (NetworkMonitorImpl.kt:61)

To fix this, the cold flow from callbackFlow is converted to a StateFlow.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-16 13:50:51 +01:00
..
AttachmentDialog.kt Add SPDX header 2024-03-29 15:42:11 +01:00
AudioOutputDialog.kt Add SPDX header 2024-03-29 15:42:11 +01:00
ChooseAccountDialogFragment.java Refactoring NetworkMonitor to be more Java friendly 2024-11-21 10:17:14 +01:00
ChooseAccountShareToDialogFragment.kt fix: remove use of LayoutInflater.from(Context) 2024-06-19 17:15:21 +02:00
ConversationsListBottomDialog.kt style(detekt): Accept current use of TooGenericExceptionCaught cases 2024-12-06 11:11:24 +01:00
DateTimeCompose.kt fix SPDX header, remove comments 2025-01-10 11:37:08 +01:00
DialogBanListFragment.kt fix: use layoutInflater directly 2024-08-17 19:56:45 +02:00
FileAttachmentPreviewFragment.kt fix: remove use of LayoutInflater.from(Context) 2024-06-19 17:15:21 +02:00
FilterConversationFragment.kt hide archivedFilterChip when capability is not available 2024-11-11 15:44:06 +01:00
MessageActionsDialog.kt fix TooManyRequestsException 2025-01-16 13:50:51 +01:00
MoreCallActionsDialog.kt fix to support different screen densities 2024-11-14 15:36:59 +01:00
SaveToStorageDialogFragment.kt Add SPDX header 2024-03-29 15:42:11 +01:00
ScopeDialog.kt Add SPDX header 2024-03-29 15:42:11 +01:00
SetPhoneNumberDialogFragment.kt Add SPDX header 2024-03-29 15:42:11 +01:00
SetStatusDialogFragment.kt use safe call operator 2024-11-26 12:12:17 +01:00
ShowReactionsDialog.kt Offline support for conversations and chats 2024-08-12 16:47:03 +02:00
SortingOrderDialogFragment.java fix: remove use of LayoutInflater.from(Context) 2024-06-19 17:15:21 +02:00
TempMessageActionsDialog.kt fix TooManyRequestsException 2025-01-16 13:50:51 +01:00