




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第22天BroadcastReceiver及Notification 22.1Notification(普通通知、大视图通知、进度条通知、自定义通知) 22.1.1 Notification的作用 Notification在每一个Android应用开发中基本都会遇到,它可以按指定的规则向用户推送一些消息,是一项非常实用的功能。如:今日头条,墨迹天气,微信,QQ等。 22.1.2普通通知的用法 获取通知服务对象NotificationManager NotificationManagernotiManager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE); 建立Notification对象 NotificationCompat.Builderbuilder=newNotificationCompat.Builder(this); //必须设置bbuilder.setSmallIcon(R.mipmap.ic_launcher);//通知小图标,会在状态栏显示builder.setContentTitle("提示:");//通知栏的通知标题builder.setTicker("您有1跳未读短信!");//通知弹出时状态栏的提示文本builder.setContentText("您有1跳未读短信!");//通知栏的通知内容 builder1.setDefaults//设置默认的提示声音震动等Notificationnotification=builder.build(); 执行通知 //通过通知管理器唤醒一个通知,参数一:通知的id,参数二:通知对象notiManager.notify(1003,notification); 22.1.3PendingIntent的用法(Flag属性) PendingIntent字面意义:等待的,未决定的Intent。 pendingIntent是一种特殊的Intent。主要的区别在于Intent的执行立刻的,而pendingIntent的执行不是立刻的。pendingIntent执行的操作实质上是参数传进来的Intent的操作,但是使用pendingIntent的目的在于它所包含的Intent的操作的执行是需要满足某些条件的。主要的使用的地方:通知Notification的发送短消息、应用推送等等。 其中参数4的flags有四个取值:intFLAG_CANCEL_CURRENT:如果该PendingIntent已经存在,则在生成新的之前取消当前的。intFLAG_NO_CREATE:如果该PendingIntent不存在,直接返回null而不是创建一个PendingIntent.intFLAG_ONE_SHOT:该PendingIntent只能用一次,在send()方法执行后,自动取消。intFLAG_UPDATE_CURRENT:如果该PendingIntent已经存在,则用新传入的Intent更新当前的数据。 一般跳转Activity的时候,我们需要把最后一个参数改为PendingIntent.FLAG_UPDATE_CURRENT,这样在启动的Activity里就可以用接收Intent传送数据的方法正常接收。 要得到一个pendingIntent对象,使用方法类的静态方法HYPERLINK"http://www.cmd100.com/docs/reference/android/app/PendingIntent.html"\l"getActivity(android.content.Context,int,android.content.Intent,int)"getActivity(Context,int,Intent,int) Intentintent=newIntent(this,NextActivity.class); PendingIntentpIntent=PendingIntent.getActivity(this,0,intent,0); builder.setContentIntent(pIntent);//关联PendingIntentbuilder.setAutoCancel(true);//是否自动取消自己的通知,默认false不取消 22.1.5 大视图通知 加入如下代码即可转换成大视图通知 //注意!大图通知的时候,普通的通知内容将失效... //得到一个大图的通知对象,并且包含普通通知的内容, NotificationCompat.BigPictureStylebigStyle=newNotificationCompat.BigPi

xf****65
实名认证
内容提供者


最近下载