diff --git a/app/src/main/java/org/purplei2p/i2pd/ForegroundService.java b/app/src/main/java/org/purplei2p/i2pd/ForegroundService.java index c6b87e6..9161ad9 100644 --- a/app/src/main/java/org/purplei2p/i2pd/ForegroundService.java +++ b/app/src/main/java/org/purplei2p/i2pd/ForegroundService.java @@ -19,6 +19,11 @@ public class ForegroundService extends Service { private static final String TAG = "FgService"; private volatile boolean shown; + + public static ForegroundService getInstance() { + return instance; + } + private static ForegroundService instance; private static volatile DaemonWrapper daemon; private static final Object initDeinitLock = new Object(); diff --git a/app/src/main/java/org/purplei2p/i2pd/appscope/App.java b/app/src/main/java/org/purplei2p/i2pd/appscope/App.java index ff1fbc1..becc336 100644 --- a/app/src/main/java/org/purplei2p/i2pd/appscope/App.java +++ b/app/src/main/java/org/purplei2p/i2pd/appscope/App.java @@ -80,6 +80,12 @@ public void onTerminate() { } catch (Throwable tr) { Log.e(TAG, "throwable caught and ignored", tr); } + try{ + ForegroundService fs = ForegroundService.getInstance(); + if(fs!=null)fs.onDestroy(); + }catch(Throwable tr) { + Log.e(TAG, "", tr); + } super.onTerminate(); }