mirror of
https://github.com/M66B/FairEmail.git
synced 2026-01-03 19:34:15 +01:00
Handle screen off in sync service
This commit is contained in:
@@ -127,7 +127,9 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
builder.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET);
|
||||
// Removed because of Android VPN service
|
||||
// builder.addCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED);
|
||||
cm.registerNetworkCallback(builder.build(), networkCallback);
|
||||
cm.registerNetworkCallback(builder.build(), onNetworkCallback);
|
||||
|
||||
registerReceiver(onScreenOff, new IntentFilter(Intent.ACTION_SCREEN_OFF));
|
||||
|
||||
DB db = DB.getInstance(this);
|
||||
|
||||
@@ -183,6 +185,8 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
});
|
||||
|
||||
WorkerCleanup.queue(this);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -190,8 +194,10 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
Log.i("Service destroy");
|
||||
EntityLog.log(this, "Service destroy");
|
||||
|
||||
unregisterReceiver(onScreenOff);
|
||||
|
||||
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
|
||||
cm.unregisterNetworkCallback(networkCallback);
|
||||
cm.unregisterNetworkCallback(onNetworkCallback);
|
||||
|
||||
Core.notifyReset(this);
|
||||
|
||||
@@ -1265,7 +1271,7 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
}
|
||||
}
|
||||
|
||||
ConnectivityManager.NetworkCallback networkCallback = new ConnectivityManager.NetworkCallback() {
|
||||
private ConnectivityManager.NetworkCallback onNetworkCallback = new ConnectivityManager.NetworkCallback() {
|
||||
@Override
|
||||
public void onAvailable(Network network) {
|
||||
networkState.update(ConnectionHelper.getNetworkState(ServiceSynchronize.this));
|
||||
@@ -1357,6 +1363,15 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
}
|
||||
};
|
||||
|
||||
private BroadcastReceiver onScreenOff = new BroadcastReceiver() {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
Log.i("Received " + intent);
|
||||
Log.logExtras(intent);
|
||||
Helper.clearAuthentication(ServiceSynchronize.this);
|
||||
}
|
||||
};
|
||||
|
||||
static void boot(final Context context) {
|
||||
if (!booted) {
|
||||
booted = true;
|
||||
|
||||
Reference in New Issue
Block a user