极光推送(二)接收通知

步骤(分为两步)

一.设置通知栏样式(如果不设置则默认使用自带的),这里官方给了三种方式:

1.基础(定制声音、震动、闪灯等 Notification 样式):

BasicPushNotificationBuilder builder = new BasicPushNotificationBuilder(MainActivity.this);
builder.statusBarDrawable = R.drawable.jpush_notification_icon;
builder.notificationFlags = Notification.FLAG_AUTO_CANCEL
    | Notification.FLAG_SHOW_LIGHTS;  //设置为自动消失和呼吸灯闪烁
builder.notificationDefaults = Notification.DEFAULT_SOUND
    | Notification.DEFAULT_VIBRATE
    | Notification.DEFAULT_LIGHTS;  // 设置为铃声、震动、呼吸灯闪烁都要
//注意这里的 1 ,以后会有用
JPushInterface.setPushNotificationBuilder(1, builder);

2.定制带按钮的Notification样式(3.0.0及以上版本sdk才支持该样式,且该样式在某些与Android原生系统有差异的机型上无法正常显示):

MultiActionsNotificationBuilder builder = new MultiActionsNotificationBuilder(PushSetActivity.this);
//添加按钮,参数(按钮图片、按钮文字、扩展数据)
builder.addJPushAction(R.drawable.jpush_ic_richpush_actionbar_back, "first", "my_extra1");
builder.addJPushAction(R.drawable.jpush_ic_richpush_actionbar_back, "second", "my_extra2");
builder.addJPushAction(R.drawable.jpush_ic_richpush_actionbar_back, "third", "my_extra3");
//注意这里设置的2,以后会有用
JPushInterface.setPushNotificationBuilder(2, builder);

3.高级自定义:

CustomPushNotificationBuilder builder = new
            CustomPushNotificationBuilder(this,
            R.layout.customer_notitfication_layout,
            R.id.icon,
            R.id.title,
            R.id.text);
    // 指定定制的 Notification Layout
    builder.statusBarDrawable = R.mipmap.ic_launcher;
    // 指定最顶层状态栏小图标
    builder.layoutIconDrawable = R.mipmap.flag;
    // 指定下拉状态栏时显示的通知图标,同时也注意这里的3,因为能否显示自定义的这些通知样式全靠这些标记
    JPushInterface.setPushNotificationBuilder(3, builder);

二.如何显示你所设置的通知:

通过极光推送的后台发送通知你会发现你所设置的样式不起作用,那么如何让它起作用呢?这里有两种方式可以实现:

1.通过配置后台数据:

1).在极光推送后台发送通知时点击可选设置按钮
2).在通知栏样式编号那里填写上面我所强调需要注意的标记,即可显示你设置的通知栏样式

2.通过代码修改默认通知栏样式:

CustomPushNotificationBuilder builder = new
            CustomPushNotificationBuilder(this,
            R.layout.customer_notitfication_layout,
            R.id.icon,
            R.id.title,
            R.id.text);
    // 指定定制的 Notification Layout
    builder.statusBarDrawable = R.mipmap.ic_launcher;
    // 指定最顶层状态栏小图标
    builder.layoutIconDrawable = R.mipmap.flag;
    // 指定下拉状态栏时显示的通知图标
    JPushInterface.setPushNotificationBuilder(1, builder);
    JPushInterface.setDefaultPushNotificationBuilder(builder);

三.获取通知的信息

1.编写接收消息的Receiver

public class JiguangReceiver extends BroadcastReceiver {
    private NotificationManager nm;
    @Override
    public void onReceive(Context context, Intent intent) {
        if (null == nm) {
            nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
        }
        Bundle bundle = intent.getExtras();
        if (JPushInterface.ACTION_NOTIFICATION_OPENED.equals(intent.getAction())) {
            openNotification(context,bundle);
        }
    }
    //    点击通知栏信息启动Activity
    private void openNotification(Context context, Bundle bundle) {
        Intent mIntent = new Intent(context, Test1Activity.class);
        mIntent.putExtras(bundle);
        mIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(mIntent);
    }
}

2.在AndroidManifest.xml文件中注册Receiver

 <receiver
        android:name=".JiguangReceiver"
        android:enabled="true">
        <intent-filter>
            <action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED" />
            <action android:name="cn.jpush.android.intent.NOTIFICATION_OPENED" />
            <action android:name="cn.jpush.android.intent.NOTIFICATION_CLICK_ACTION" />
            <action android:name="cn.jpush.android.intent.CONNECTION" />
            <category android:name="com.itfitness.jiguang" />
        </intent-filter>
    </receiver>

3.在点击通知打开的Activity中展示信息

public class Test1Activity extends AppCompatActivity {

    private TextView textView;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.test_layout);
        textView = findViewById(R.id.tv);
        Bundle extras = getIntent().getExtras();
        textView.setText(extras.getString(JPushInterface.EXTRA_EXTRA));
    }
}

四.效果展示

1.添加字段

image

个人技术博客:https://myml666.github.io

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,542评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,822评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,912评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,449评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,500评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,370评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,193评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,074评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,505评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,722评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,841评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,569评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,168评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,783评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,918评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,962评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,781评论 2 354

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明先生_X自主阅读 15,980评论 3 119
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,103评论 4 62
  • 秋雨淅淅沥沥 要连下几天 即便打湿了裸露在室外的一切 降低了温度 我的心房依旧温暖 如温室大棚 可以栽种苗苗 灌溉...
    ErinTang阅读 247评论 0 1
  • 雨轻敲,风慢卷。伫立堂前,滴破芙蓉面。 欲掩奔流湿泪眼。望断横波,尽把愁思展。 易销魂,难缱绻。世已蹉跎,岁月伤遗...
    小薇_阅读 657评论 20 24
  • 步入小学近一个月,从开始的焦头烂额到现在应对自如,感谢一直陪我的老爸老妈,赵波同学。草莓同学也开始适应并且喜欢上学...
    blanca静阅读 443评论 0 1