|
@@ -0,0 +1,135 @@
|
|
|
+package com.xunao.effectdemo.receiver;
|
|
|
+
|
|
|
+import android.content.Context;
|
|
|
+import android.content.Intent;
|
|
|
+import android.util.Log;
|
|
|
+import cn.jpush.android.api.CmdMessage;
|
|
|
+import cn.jpush.android.api.CustomMessage;
|
|
|
+import cn.jpush.android.api.JPushInterface;
|
|
|
+import cn.jpush.android.api.JPushMessage;
|
|
|
+import cn.jpush.android.api.NotificationMessage;
|
|
|
+import cn.jpush.android.service.JPushMessageReceiver;
|
|
|
+
|
|
|
+/**
|
|
|
+ * author : 程中强
|
|
|
+ * e-mail : 740479946@qq.com
|
|
|
+ * date : 2022/8/2416:42
|
|
|
+ * desc :
|
|
|
+ * version: 1.0
|
|
|
+ */
|
|
|
+public class PushMessageReceiver extends JPushMessageReceiver {
|
|
|
+ private static final String TAG = "PushMessageReceiver";
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onMessage(Context context, CustomMessage customMessage) {
|
|
|
+ Log.e(TAG, "[onMessage] " + customMessage);
|
|
|
+ Intent intent = new Intent("com.jiguang.demo.message");
|
|
|
+ intent.putExtra("msg", customMessage.message);
|
|
|
+ context.sendBroadcast(intent);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onNotifyMessageOpened(Context context, NotificationMessage message) {
|
|
|
+ Log.e(TAG, "[onNotifyMessageOpened] " + message);
|
|
|
+ try{
|
|
|
+// if (!EVApp.getInstance().hasLogin())
|
|
|
+// return;
|
|
|
+// //打开自定义的Activity
|
|
|
+// Intent i = new Intent(context, MessageListActivity.class);
|
|
|
+// Bundle bundle = new Bundle();
|
|
|
+// bundle.putString(JPushInterface.EXTRA_NOTIFICATION_TITLE,message.notificationTitle);
|
|
|
+// bundle.putString(JPushInterface.EXTRA_ALERT,message.notificationContent);
|
|
|
+// i.putExtras(bundle);
|
|
|
+// i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP );
|
|
|
+// context.startActivity(i);
|
|
|
+ }catch (Throwable throwable){
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onMultiActionClicked(Context context, Intent intent) {
|
|
|
+ Log.e(TAG, "[onMultiActionClicked] 用户点击了通知栏按钮");
|
|
|
+ String nActionExtra = intent.getExtras().getString(JPushInterface.EXTRA_NOTIFICATION_ACTION_EXTRA);
|
|
|
+
|
|
|
+ //开发者根据不同 Action 携带的 extra 字段来分配不同的动作。
|
|
|
+ if (nActionExtra == null) {
|
|
|
+ Log.d(TAG, "ACTION_NOTIFICATION_CLICK_ACTION nActionExtra is null");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if (nActionExtra.equals("my_extra1")) {
|
|
|
+ Log.e(TAG, "[onMultiActionClicked] 用户点击通知栏按钮一");
|
|
|
+ } else if (nActionExtra.equals("my_extra2")) {
|
|
|
+ Log.e(TAG, "[onMultiActionClicked] 用户点击通知栏按钮二");
|
|
|
+ } else if (nActionExtra.equals("my_extra3")) {
|
|
|
+ Log.e(TAG, "[onMultiActionClicked] 用户点击通知栏按钮三");
|
|
|
+ } else {
|
|
|
+ Log.e(TAG, "[onMultiActionClicked] 用户点击通知栏按钮未定义");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onNotifyMessageArrived(Context context, NotificationMessage message) {
|
|
|
+ Log.e(TAG, "[onNotifyMessageArrived] " + message);
|
|
|
+// if (AppUtils.isAppForeground()&&EVApp.getInstance().hasLogin()){
|
|
|
+// JPushInterface.clearNotificationById(context, message.notificationId);
|
|
|
+// Intent intent = new Intent(context, NoticeDialogActivity.class);
|
|
|
+// intent.putExtra("title",message.notificationTitle);
|
|
|
+// intent.putExtra("content",message.notificationContent);
|
|
|
+// intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP );
|
|
|
+// context.startActivity(intent);
|
|
|
+// }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onNotifyMessageDismiss(Context context, NotificationMessage message) {
|
|
|
+ Log.e(TAG, "[onNotifyMessageDismiss] " + message);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onRegister(Context context, String registrationId) {
|
|
|
+ Log.e(TAG, "[onRegister] " + registrationId);
|
|
|
+ Intent intent = new Intent("com.jiguang.demo.register");
|
|
|
+ context.sendBroadcast(intent);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onConnected(Context context, boolean isConnected) {
|
|
|
+ Log.e(TAG, "[onConnected] " + isConnected);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onCommandResult(Context context, CmdMessage cmdMessage) {
|
|
|
+ Log.e(TAG, "[onCommandResult] " + cmdMessage);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onTagOperatorResult(Context context, JPushMessage jPushMessage) {
|
|
|
+// TagAliasOperatorHelper.getInstance().onTagOperatorResult(context,jPushMessage);
|
|
|
+ super.onTagOperatorResult(context, jPushMessage);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onCheckTagOperatorResult(Context context, JPushMessage jPushMessage) {
|
|
|
+// TagAliasOperatorHelper.getInstance().onCheckTagOperatorResult(context,jPushMessage);
|
|
|
+ super.onCheckTagOperatorResult(context, jPushMessage);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onAliasOperatorResult(Context context, JPushMessage jPushMessage) {
|
|
|
+// TagAliasOperatorHelper.getInstance().onAliasOperatorResult(context,jPushMessage);
|
|
|
+ super.onAliasOperatorResult(context, jPushMessage);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onMobileNumberOperatorResult(Context context, JPushMessage jPushMessage) {
|
|
|
+// TagAliasOperatorHelper.getInstance().onMobileNumberOperatorResult(context,jPushMessage);
|
|
|
+ super.onMobileNumberOperatorResult(context, jPushMessage);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void onNotificationSettingsCheck(Context context, boolean isOn, int source) {
|
|
|
+ super.onNotificationSettingsCheck(context, isOn, source);
|
|
|
+ Log.e(TAG, "[onNotificationSettingsCheck] isOn:" + isOn + ",source:" + source);
|
|
|
+ }
|
|
|
+}
|