public void StartFlow() { try { // Reload policies: FilteringObjects.httpPolicy.reloadPolicy(File.ReadAllText(Filenames.HTTP_POLICY.getAppPrivate())); FilteringObjects.timePolicy.reloadPolicy(File.ReadAllText(Filenames.TIME_POLICY.getAppPrivate())); if (!AndroidBridge.isForegroundServiceUp()) { AndroidBridge.OnForgroundServiceStart = () => { AndroidBridge.d(TAG, "Starting filtering flow"); myHTTPServer.StartHttpServer(); StartPeriodicTasks(); }; AndroidBridge.OnForgroundServiceStop = () => { AndroidBridge.d(TAG, "Stopping filtering flow"); StopPeriodicTasks(); myHTTPServer.StopHTTPServer(); }; AndroidBridge.StartForgroundService(); } else { AndroidBridge.ToastIt("Service already up!"); } } catch (Exception ex) { AndroidBridge.e(TAG, ex); } }