From 42d64ca2f0531af93c9d772189d9f4598650f69e Mon Sep 17 00:00:00 2001 From: darkterrorooo Date: Wed, 9 Dec 2015 17:55:10 +0800 Subject: [PATCH 1/2] fix android openNotification twice --- src/android/JPushPlugin.java | 23 ++++++++++++++++------- src/android/MyReceiver.java | 2 +- 2 files changed, 17 insertions(+), 8 deletions(-) diff --git a/src/android/JPushPlugin.java b/src/android/JPushPlugin.java index d71db60..d6f1583 100644 --- a/src/android/JPushPlugin.java +++ b/src/android/JPushPlugin.java @@ -56,7 +56,9 @@ public class JPushPlugin extends CordovaPlugin { private ExecutorService threadPool = Executors.newFixedThreadPool(1); private static JPushPlugin instance; + private static String TAG = "Client JPushPlugin"; + public static boolean bOpenNotificationAlert = true; public static String notificationAlert; public static Map notificationExtras=new HashMap(); public static String openNotificationAlert; @@ -73,12 +75,19 @@ public class JPushPlugin extends CordovaPlugin { //JPushPlugin.notificationAlert = alert; //JPushPlugin.notificationExtras = extras; - if(JPushPlugin.openNotificationAlert != null){ - JPushPlugin.transmitOpen(JPushPlugin.openNotificationAlert, JPushPlugin.openNotificationExtras); - } - if(JPushPlugin.notificationAlert!=null){ - JPushPlugin.transmitReceive(JPushPlugin.notificationAlert, JPushPlugin.notificationExtras); - } + + if(JPushPlugin.bOpenNotificationAlert){ + + JPushPlugin.bOpenNotificationAlert = false; + if(JPushPlugin.openNotificationAlert != null){ + JPushPlugin.transmitOpen(JPushPlugin.openNotificationAlert, JPushPlugin.openNotificationExtras); + } + if(JPushPlugin.notificationAlert!=null){ + JPushPlugin.transmitReceive(JPushPlugin.notificationAlert, JPushPlugin.notificationExtras); + } + + } + //JPushInterface.init(cordova.getActivity().getApplicationContext()); } @@ -226,7 +235,7 @@ public class JPushPlugin extends CordovaPlugin { JSONArray.class, CallbackContext.class); method.invoke(JPushPlugin.this, data, callbackContext); } catch (Exception e) { - System.out.println(e.toString()); + Log.e(TAG,e.toString()); } } }); diff --git a/src/android/MyReceiver.java b/src/android/MyReceiver.java index d36b1fb..14db57a 100644 --- a/src/android/MyReceiver.java +++ b/src/android/MyReceiver.java @@ -48,7 +48,7 @@ public class MyReceiver extends BroadcastReceiver { Intent launch = context.getPackageManager().getLaunchIntentForPackage(context.getPackageName()); launch.addCategory(Intent.CATEGORY_LAUNCHER); launch.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_SINGLE_TOP); - + JPushPlugin.bOpenNotificationAlert = true; JPushPlugin.openNotificationAlert = alert; JPushPlugin.openNotificationExtras = extras; From a3ad96f786a54938ab6ad0649e676372b164ab54 Mon Sep 17 00:00:00 2001 From: darkterrorooo Date: Wed, 9 Dec 2015 18:27:08 +0800 Subject: [PATCH 2/2] fix tortuous --- example/index.html | 8 ++++---- src/android/JPushPlugin.java | 2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/example/index.html b/example/index.html index b7f1520..4ca50d4 100644 --- a/example/index.html +++ b/example/index.html @@ -54,13 +54,13 @@ } var onReceiveNotification = function(event){ try{ - var alert + var alertContent if(device.platform == "Android"){ - alert = window.plugins.jPushPlugin.receiveNotification.alert; + alertContent = window.plugins.jPushPlugin.receiveNotification.alert; }else{ - alert = event.aps.alert; + alertContent = event.aps.alert; } - $("#notificationResult").html(alert); + $("#notificationResult").html(alertContent); } catch(exeption){ diff --git a/src/android/JPushPlugin.java b/src/android/JPushPlugin.java index d6f1583..8bed439 100644 --- a/src/android/JPushPlugin.java +++ b/src/android/JPushPlugin.java @@ -26,6 +26,8 @@ import cn.jpush.android.api.CustomPushNotificationBuilder; import cn.jpush.android.api.JPushInterface; import cn.jpush.android.data.JPushLocalNotification; import cn.jpush.android.api.TagAliasCallback; +import android.util.Log; + public class JPushPlugin extends CordovaPlugin { private final static List methodList =