diff --git a/android/capacitor-cordova/src/main/java/com/getcapacitor/cordova/CordovaPlugin.java b/android/capacitor-cordova/src/main/java/com/getcapacitor/cordova/CordovaPlugin.java index 5fe4e74b5..0f42d5aae 100644 --- a/android/capacitor-cordova/src/main/java/com/getcapacitor/cordova/CordovaPlugin.java +++ b/android/capacitor-cordova/src/main/java/com/getcapacitor/cordova/CordovaPlugin.java @@ -3,6 +3,7 @@ import android.content.Intent; import android.os.Bundle; import android.webkit.WebView; +import com.getcapacitor.CordovaBridgeConfig; import com.getcapacitor.Logger; import com.getcapacitor.Plugin; import com.getcapacitor.annotation.CapacitorPlugin; @@ -16,7 +17,7 @@ import org.json.JSONException; @CapacitorPlugin(name = "__CordovaPlugin") -public class CordovaPlugin extends Plugin { +public class CordovaPlugin extends Plugin implements CordovaBridgeConfig { private MockCordovaInterfaceImpl cordovaInterface; private CordovaWebView webView; @@ -83,16 +84,13 @@ protected void handleRequestPermissionsResult(int requestCode, String[] permissi } @Override - public boolean hasPermission(String permission) { - if (permission.equals("DisableDeploy")) { - return preferences.getBoolean(permission, false); - } - - if (permission.equals("KeepRunning")) { - return preferences.getBoolean(permission, true); - } + public boolean shouldKeepRunning() { + return preferences.getBoolean("KeepRunning", true); + } - return false; + @Override + public boolean isDeployDisabled() { + return preferences.getBoolean("DisableDeploy", false); } @Override diff --git a/android/capacitor/src/main/java/com/getcapacitor/Bridge.java b/android/capacitor/src/main/java/com/getcapacitor/Bridge.java index 00dd89d60..171d4b6d1 100644 --- a/android/capacitor/src/main/java/com/getcapacitor/Bridge.java +++ b/android/capacitor/src/main/java/com/getcapacitor/Bridge.java @@ -379,22 +379,20 @@ private Plugin cordova() { return null; } - public boolean isDeployDisabled() { + public boolean shouldKeepRunning() { Plugin cordova = this.cordova(); - if (cordova != null) { - return cordova.hasPermission("DisableDeploy"); - } else { - return false; + if (cordova instanceof CordovaBridgeConfig) { + return ((CordovaBridgeConfig) cordova).shouldKeepRunning(); } + return false; } - public boolean shouldKeepRunning() { + public boolean isDeployDisabled() { Plugin cordova = this.cordova(); - if (cordova != null) { - return cordova.hasPermission("KeepRunning"); - } else { - return false; + if (cordova instanceof CordovaBridgeConfig) { + return ((CordovaBridgeConfig) cordova).isDeployDisabled(); } + return false; } public void handleAppUrlLoadError(Exception ex) { diff --git a/android/capacitor/src/main/java/com/getcapacitor/CordovaBridgeConfig.java b/android/capacitor/src/main/java/com/getcapacitor/CordovaBridgeConfig.java new file mode 100644 index 000000000..784062aed --- /dev/null +++ b/android/capacitor/src/main/java/com/getcapacitor/CordovaBridgeConfig.java @@ -0,0 +1,6 @@ +package com.getcapacitor; + +public interface CordovaBridgeConfig { + boolean isDeployDisabled(); + boolean shouldKeepRunning(); +}