Commit 4815d591 by PKnittel

Added Foreground Mode on android

parent 3dde85cf
......@@ -35,6 +35,7 @@ import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Activity;
import android.app.AlarmManager;
import android.app.NotificationManager;
import android.app.PendingIntent;
......@@ -43,6 +44,7 @@ import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Build;
import android.widget.Toast;
/**
* This plugin utilizes the Android AlarmManager in combination with StatusBar
......@@ -59,6 +61,7 @@ public class LocalNotification extends CordovaPlugin {
protected static Context context = null;
protected static Boolean isInBackground = true;
private static ArrayList<String> eventQueue = new ArrayList<String>();
static Activity activity;
@Override
public void initialize (CordovaInterface cordova, CordovaWebView webView) {
......@@ -66,6 +69,7 @@ public class LocalNotification extends CordovaPlugin {
LocalNotification.webView = super.webView;
LocalNotification.context = super.cordova.getActivity().getApplicationContext();
LocalNotification.activity = super.cordova.getActivity();
}
@Override
......@@ -321,7 +325,6 @@ public class LocalNotification extends CordovaPlugin {
/**
* Clear all notifications without canceling repeating alarms
*
*/
public static void clearAll (){
SharedPreferences settings = getSharedPreferences();
......@@ -679,5 +682,16 @@ public class LocalNotification extends CordovaPlugin {
return arguments;
}
public static void showNotification(String title,String notification){
int duration = Toast.LENGTH_LONG;
if(title.equals("")){
title = "Notification";
}
String text = title + " \n " + notification;
Toast notificationToast = Toast.makeText(context, text, duration);
notificationToast.show();
}
}
......@@ -79,10 +79,17 @@ public class Receiver extends BroadcastReceiver {
} else {
LocalNotification.add(options.moveDate(), false);
}
if (!LocalNotification.isInBackground && options.getForegroundMode()){
if (options.getInterval() == 0) {
LocalNotification.unpersist(options.getId());
}
LocalNotification.showNotification(options.getTitle(), options.getMessage());
fireTriggerEvent();
} else {
Builder notification = buildNotification();
Builder notification = buildNotification();
showNotification(notification);
showNotification(notification);
}
}
/*
......
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