极光推送使用实例(三) Android客户端
2015-02-10 13:50
429 查看
上一篇[极光推送Android客户端(一)],我们实现了极光推送在Android客户端推送功能。这篇文章我们进一步介绍下实现推送的效果(/article/2442991.html)
关键点:
自定义通知栏样式设计
有个 PushNotificationBuilder 概念,开发者使用 setPushNotificationBuilder 方法为某种类型的 PushNotificationBuilder 指定编号;
setPushNotificationBuilder 可以在 JPushInterface.init() 之后任何地方调用,可以是开发者应用的逻辑来触发调用,或者初始化时调用。
只需要设置一次,JPush SDK 会记住这个设置。在下次收到推送通知时,就根据通知里指定的编号来找到 PushNotificationBuilder 来展现、执行。
来看下面这张图片
![](http://img.blog.csdn.net/20150210092324592)
我们要想实现一些自己想要的效果,比如设置通知的图片、音乐以及推送内容的页面展示形式。
看过上一篇的应该都已经了解,在高级功能设置里有一个选项是设置通知栏的,我们一起来看一下源码,其实很简单。
ok,来看setStyleBasic,这里我设置了自己的图标:R.drawable.t_2
除了极光推送sdk自定义的通知栏属性外。我们可以自定义通知栏的显示界面。来看点击第二个通知栏选项的代码实现
这里的R.layout.customer_notitfication_layout就是自定义一个layout。源码也很简单。个人认为极光sdk里的样式就可以满足大部分项目需求了。要自定义也可以,但是不需要太复杂。
ok,极光推送的知识到此总结完毕。有问题大家可以留言讨论。
关键点:
自定义通知栏样式设计
有个 PushNotificationBuilder 概念,开发者使用 setPushNotificationBuilder 方法为某种类型的 PushNotificationBuilder 指定编号;
setPushNotificationBuilder 可以在 JPushInterface.init() 之后任何地方调用,可以是开发者应用的逻辑来触发调用,或者初始化时调用。
只需要设置一次,JPush SDK 会记住这个设置。在下次收到推送通知时,就根据通知里指定的编号来找到 PushNotificationBuilder 来展现、执行。
来看下面这张图片
我们要想实现一些自己想要的效果,比如设置通知的图片、音乐以及推送内容的页面展示形式。
看过上一篇的应该都已经了解,在高级功能设置里有一个选项是设置通知栏的,我们一起来看一下源码,其实很简单。
public void onClick(View v) { switch (v.getId()) { case R.id.bt_tag: setTag(); break; case R.id.bt_alias: setAlias(); break; case R.id.setStyle1: setStyleBasic(); break; case R.id.setStyle2: setStyleCustom(); break; case R.id.bu_setTime: Intent intent = new Intent(PushSetActivity.this, SettingActivity.class); startActivity(intent); break; }
ok,来看setStyleBasic,这里我设置了自己的图标:R.drawable.t_2
[code]/** *设置通知提示方式 - 基础属性 */ private void setStyleBasic(){ BasicPushNotificationBuilder builder = new BasicPushNotificationBuilder(PushSetActivity.this); builder.statusBarDrawable = R.drawable.t_2; builder.notificationFlags = Notification.FLAG_AUTO_CANCEL; //设置为点击后自动消失 builder.notificationDefaults = Notification.DEFAULT_SOUND; //设置为铃声( Notification.DEFAULT_SOUND)或者震动( Notification.DEFAULT_VIBRATE) JPushInterface.setPushNotificationBuilder(1, builder); Toast.makeText(PushSetActivity.this, "Basic Builder - 1", Toast.LENGTH_SHORT).show(); }
除了极光推送sdk自定义的通知栏属性外。我们可以自定义通知栏的显示界面。来看点击第二个通知栏选项的代码实现
[code]/** *设置通知栏样式 - 定义通知栏Layout */ private void setStyleCustom(){ CustomPushNotificationBuilder builder = new CustomPushNotificationBuilder(PushSetActivity.this,R.layout.customer_notitfication_layout,R.id.icon, R.id.title, R.id.text); builder.layoutIconDrawable = R.drawable.ic_launcher; builder.developerArg0 = "developerArg2"; JPushInterface.setPushNotificationBuilder(2, builder); Toast.makeText(PushSetActivity.this,"Custom Builder - 2", Toast.LENGTH_SHORT).show(); }
这里的R.layout.customer_notitfication_layout就是自定义一个layout。源码也很简单。个人认为极光sdk里的样式就可以满足大部分项目需求了。要自定义也可以,但是不需要太复杂。
ok,极光推送的知识到此总结完毕。有问题大家可以留言讨论。
相关文章推荐
- 极光推送使用实例(二) Android客户端
- 极光推送使用实例(二) Android客户端
- 极光推送使用实例(二) Android客户端
- Android客户端与PHP服务端通信(五)---移植使用极光推送
- Android客户端与PHP服务端通信(三)---极光推送注册使用
- 极光推送之服务器端向android等客户端推送实例
- Ionic项目中使用极光推送-android
- Ionic项目中使用极光推送-android
- Android客户端与PHP服务端通信(四)---极光推送示例工程分析
- Android应用开发 推送理解析极光推送使用详解
- 【转载】极光推送 使用实例 (一)服务端
- Ionic项目中使用极光推送-android
- 使用Project客户端和Project Server进行项目管理 - android开发实例 - 博客园
- 极光推送 使用实例 (一)服务端
- Android JPush(极光推送)的使用教程
- c#后台 极光推送到Android 和IOS客户端
- 使用极光推送做iOS客户端的推送
- 使用PHP给Android移动客户端推送消息
- [原]Android Studio使用极光推送出现at cn.jpush.android.service.ServiceInterface.a(Unknown Source) 已解决
- Android小菜鸟向大神进攻的奋斗记(一)之关于Android studio 使用极光推送,集成成功,但是推送不成