mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-23 20:55:02 +01:00
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> |
||
---|---|---|
.. | ||
AttachmentDialog.kt | ||
AudioOutputDialog.kt | ||
ChooseAccountDialogFragment.java | ||
ChooseAccountShareToDialogFragment.kt | ||
ConversationsListBottomDialog.kt | ||
DateTimeCompose.kt | ||
DialogBanListFragment.kt | ||
FileAttachmentPreviewFragment.kt | ||
FilterConversationFragment.kt | ||
MessageActionsDialog.kt | ||
MoreCallActionsDialog.kt | ||
SaveToStorageDialogFragment.kt | ||
ScopeDialog.kt | ||
SetPhoneNumberDialogFragment.kt | ||
SetStatusDialogFragment.kt | ||
ShowReactionsDialog.kt | ||
SortingOrderDialogFragment.java | ||
TempMessageActionsDialog.kt |