diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 997f0e1..eefcbda 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -6,6 +6,7 @@
+
foreground(getString(R.string.websocket_closed)))
.onBadRequest(this::onBadRequest)
- .onFailure((min) -> foreground(getString(R.string.websocket_failed, min)))
+ .onNetworkFailure(
+ (min) -> foreground(getString(R.string.websocket_failed, min)))
+ .onDisconnect(this::onDisconnect)
.onMessage(this::onMessage)
.onReconnected(this::notifyMissedNotifications)
.start();
+
+ IntentFilter intentFilter = new IntentFilter();
+ intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
+ ReconnectListener receiver = new ReconnectListener(this::doReconnect);
+ registerReceiver(receiver, intentFilter);
+ }
+
+ private void onDisconnect() {
+ foreground(getString(R.string.websocket_no_network));
+ }
+
+ private void doReconnect() {
+ if (connection == null) {
+ return;
+ }
+
+ connection.scheduleReconnect(TimeUnit.SECONDS.toMillis(5));
}
private void onBadRequest(String message) {
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index bdba0b9..c55b3ab 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -57,4 +57,5 @@
Warning
Using http is insecure and it\'s recommend to use https instead. Use your favorite search engine to get more information about this topic.
I Understand
+ Waiting for network