public class MyReceiver extends BroadcastReceiver {
String TAG = "tag";
@Override
public void onReceive (Context context, Intent intent){
Bundle bundle = intent.getExtras();
Log.d(TAG, "onReceive - " + intent.getAction());
if (JPushInterface.ACTION_REGISTRATION_ID.equals(intent.getAction())) {
String regId = bundle.getString(JPushInterface.EXTRA_REGISTRATION_ID);
Log.d(TAG, "[MyReceiver] 接收Registration Id : " + regId);
} else if (JPushInterface.ACTION_MESSAGE_RECEIVED.equals(intent.getAction())) {
Log.d(TAG, "收到了自定义消息。消息内容是:" + bundle.getString(JPushInterface.EXTRA_MESSAGE));
// 自定义消息不会展示在通知栏,完全要开发者写代码去处理
} else if (JPushInterface.ACTION_NOTIFICATION_RECEIVED.equals(intent.getAction())) {
Log.d(TAG, "收到了通知");
// 在这里可以做些统计,或者做些其他工作
} else if (JPushInterface.ACTION_NOTIFICATION_OPENED.equals(intent.getAction())) {
Log.d(TAG, "用户点击打开了通知");
// 在这里可以自己写代码去定义用户点击后的行为
Intent i = new Intent(context, MainActivity.class); //自定义打开的界面
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
} else {
Log.d(TAG, "Unhandled intent - " + intent.getAction());
}
}
}
public class App extends Application {
@Override
public void onCreate() {
super.onCreate();
//初始化
JPushInterface.setDebugMode(true);
JPushInterface.init(this);
//设置别名
JPushInterface.setAlias(this,0,"wang");
TreeSet<String> strings = new TreeSet<>();
strings.add("包");
strings.add("口红");
JPushInterface.setTags(this,1,strings);
}
}
本文介绍了一个自定义的BroadcastReceiver——MyReceiver,用于处理极光推送的不同类型消息,包括注册ID接收、自定义消息接收、通知接收及点击行为,并展示了如何在Application中进行初始化配置。
857

被折叠的 条评论
为什么被折叠?



