Commit 9c40e8ef by Sebastián Katzer

Cancel notications before unpersisting

parent 52e84d00
...@@ -44,24 +44,22 @@ public class LocalNotification extends CordovaPlugin { ...@@ -44,24 +44,22 @@ public class LocalNotification extends CordovaPlugin {
String alarmId = options.getId(); String alarmId = options.getId();
if (action.equalsIgnoreCase("add")) { if (action.equalsIgnoreCase("add")) {
if (alarmId != null)
persist(alarmId, args); persist(alarmId, args);
add(options); add(options);
return true; return true;
} }
if (action.equalsIgnoreCase("cancel")) { if (action.equalsIgnoreCase("cancel")) {
unpersist(alarmId);
cancel(alarmId); cancel(alarmId);
unpersist(alarmId);
return true; return true;
} }
if (action.equalsIgnoreCase("cancelAll")) { if (action.equalsIgnoreCase("cancelAll")) {
unpersistAll();
cancelAll(); cancelAll();
unpersistAll();
return true; return true;
} }
...@@ -149,9 +147,11 @@ public class LocalNotification extends CordovaPlugin { ...@@ -149,9 +147,11 @@ public class LocalNotification extends CordovaPlugin {
private void persist (String alarmId, JSONArray args) { private void persist (String alarmId, JSONArray args) {
Editor editor = cordova.getActivity().getSharedPreferences(PLUGIN_NAME, Context.MODE_PRIVATE).edit(); Editor editor = cordova.getActivity().getSharedPreferences(PLUGIN_NAME, Context.MODE_PRIVATE).edit();
if (alarmId != null) {
editor.putString(alarmId, args.toString()); editor.putString(alarmId, args.toString());
editor.commit(); editor.commit();
} }
}
/** /**
* Remove a specific alarm from the Android shared Preferences. * Remove a specific alarm from the Android shared Preferences.
...@@ -162,9 +162,11 @@ public class LocalNotification extends CordovaPlugin { ...@@ -162,9 +162,11 @@ public class LocalNotification extends CordovaPlugin {
private void unpersist (String alarmId) { private void unpersist (String alarmId) {
Editor editor = cordova.getActivity().getSharedPreferences(PLUGIN_NAME, Context.MODE_PRIVATE).edit(); Editor editor = cordova.getActivity().getSharedPreferences(PLUGIN_NAME, Context.MODE_PRIVATE).edit();
if (alarmId != null) {
editor.remove(alarmId); editor.remove(alarmId);
editor.commit(); editor.commit();
} }
}
/** /**
* Clear all alarms from the Android shared Preferences. * Clear all alarms from the Android shared Preferences.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment