1、NotificationManager类对象

        <1>getSystemService(Context.NOTIFICATION_SERVICE) 获取通知管理对象
        <2>notify(int id, Notification notification)
                //定义通知管理对象
  1. NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
                //定义通知构造器对象
  1. NotificationCompat.Builder builder = new NotificationCompat.Builder(this)
  2.                         .setSmallIcon(R.drawable.ic_launcher)
  3.                         .setContentTitle("标题")
  4.                         .setContentText("文本")
  5.                         .setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE);
                (1)普通的通知
  1. Intent intent1 = new Intent(this,SecondActivity.class); //设置点击通知时打开的窗口
  2.             //定义延迟执行Intent的对象
  3.             PendingIntent pIntent = PendingIntent.getActivity(this, 1, intent1, PendingIntent.FLAG_ONE_SHOT);                      //FLAG_ONE_SHOT:通知仅执行一次
  4.            builder.setContentIntent(pIntent);
  5.             manager.notify(0,builder.build());
                (2)取消所有通知
  1. manager.cancelAll();
                (3) 带进度条的通知
  1. final NotificationCompat.Builder progressBuilder = new NotificationCompat.Builder(this);
  2. progressBuilder.setSmallIcon(R.drawable.ic_launcher)
  3. .setContentTitle("Title")
  4. .setContentText("听说宋丹丹要上马年春晚");
  5. new Thread(new Runnable() {
  6. @Override
  7. public void run() {
  8. int i;
  9. for(i = 0;i <= 100;i+= 5){
  10. //第一个参数: 进度条的最大值,第二个参数:当前进度,第三个参数:是否为不确定性进度
  11. progressBuilder.setProgress(100, i, false);
  12. manager.notify(3, progressBuilder.build());
  13. try {
  14. Thread.sleep(500); //每隔0.5秒发送一次通知
  15. } catch (InterruptedException e) {
  16. // TODO Auto-generated catch block
  17. e.printStackTrace();
  18. }
  19. }
  20. progressBuilder.setContentText("下载完毕!");
  21. manager.notify(3, progressBuilder.build());
  22. }
  23. }).start();
2、NotificationCompat.Builder 通知的构造类
        <1>普通通知
                (1)setSmallIcon(R.drawable.ic_launcher) 设置通知的小图标
                (2)setContentTitle("标题")
                (3)setContentText("文本内容")
                (4)setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE) 设置通知提示
                (5)setContentIntent(PendingIntent) 设置通知被点击后的意图
                (6)Notification build() 生成通知对象
                (7).setLargeIcon(BitmapFactory.decodeResource(getResources(),R.drawable.qq))
        <2>大视图通知
                (1)setStyle(NotificationCompat.Style) 设置大视图样式   
                            setBigContentTitle("大视图标题")
                            setSummaryText("大视图的说明")
                (2)NotificationCompat.InboxStyle 包含一个列表控件
                            addLine("message1")
                (3)NotificationCompat.BigTextStyle 包含一个大的文本控件
                           bigText("big text")
                (4)NotificationCompat.BigPictureStyle 包含一个在的图片控件
                            bigPicture(BitmapFactory.decodeResource(getResources(), R.drawable.qq))
        <3>带进度的通知
                (1)setProgress(int max, int progress, boolean indeterminate) 设置当前进度,第三个参数:是否为不确定进度条
        <4>自定义通知
                (1)setContent(RemoteViews) 设置自定义的通知内容
                (2)RemoteViews(String packageName, int layoutId) 加载一个指定应用下的布局资源文件
                (3)setTextViewText(int viewId, "内容")  设置指定TextView控件的内容
                (4)setImageViewBitmap(int viewId,Bitmap) 设置ImageView控件显示的图片
                (5)setImageViewResource(int viewId,int resid) 设置ImageView控件显示的图片资源       

Notify通知的更多相关文章

  1. java并发编程(十一)线程间的通信notify通知的遗漏

    notify通知的遗漏很容易理解,即threadA还没开始wait的时候,threadB已经notify了,这样,threadB通知是没有任何响应的,当threadB退出synchronized代码块 ...

  2. 转:【Java并发编程】之十一:线程间通信中notify通知的遗漏(含代码)

    转载请注明出处:http://blog.csdn.net/ns_code/article/details/17228213 notify通知的遗漏很容易理解,即threadA还没开始wait的时候,t ...

  3. 【Java并发编程】之十一:线程间通信中notify通知的遗漏

    notify通知的遗漏很容易理解,即threadA还没开始wait的时候,threadB已经notify了,这样,threadB通知是没有任何响应的,当threadB退出synchronized代码块 ...

  4. java线程——notify通知的泄露

    版权声明:本文为CSDN博主「兰亭风雨」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/ns_code/ar ...

  5. java锁之wait,notify(wait会释放锁,notify仅仅只是通知,不释放锁)

    wait是指在一个已经进入了同步锁的线程内,让自己暂时让出同步锁,以便其他正在等待此锁的线程可以得到同步锁并运行,只有其他线程调用了notify方法(notify并不释放锁,只是告诉调用过wait方法 ...

  6. 03.线程的通知notify与等待wait

    wait().notify.notifyAll()方法 wait().notify().notifyAll()是三个定义在Object类里的方法,可以用来控制线程的状态. 这三个方法最终调用的都是jv ...

  7. java多线程wait notify join

    wait notify 几个注意点: wait 与 notify/notifyAll 方法必须在同步代码块中使用,即要先对调用对象加锁. 当线程执行wait()时,会把当前的锁释放,然后让出CPU,进 ...

  8. java 多线程(wait/notify/notifyall)

    package com.example; public class App { /* wait\notify\notifyAll 都属于object的内置方法 * wait: 持有该对象的线程把该对象 ...

  9. 实践JAVA wait(), notify(),sleep方法--一道多线程的面试题

    建立三个线程,A线程打印10次A,B线程打印10次B,C线程打印10次C,要求线程同时运行,交替打印10次ABC. 这个问题用Object的wait(),notify()就可以很方便的解决. publ ...

随机推荐

  1. node.js的npm详解

    一.什么是npm呢 npm(Node Package Manager,node包管理器)是node的包管理器,他允许开发人员在node.js应用程序中创建,共享并重用模块.模块就是可以在不同的项目中重 ...

  2. HTTP常用的状态码

    一.200状态码: 成功2××:成功处理了请求的状态码. 1.200 :服务器已成功处理了请求并提供了请求的网页. 2.204:服务器成功处理了请求,但没有返回任何内容. 二.300状态码: 重定向3 ...

  3. oracle基础知识和常见问题

    第一步新建数据库.名称:suning用户名:sys和system密码:lsw123456在cmd启动监听的命令  lsnrctl start如果无法启动 lsnrctl start原因可能是liste ...

  4. activity 的四种启动方式

    Activity启动模式设置: <activity android:name=".MainActivity" android:launchMode="standar ...

  5. SinoSure

    Sino,就是“中国.东方”的意思, 这个词只能作为前缀使用,不能单独讲.西方社会有时使用“Sino-”来表示“中国(的)”的意思,但是“Sino”均为连接词,并非单独用来表示“中国”之语.如表达中美 ...

  6. android-exploitme(四):参数篡改

    今天我们来测试请求中参数的篡改,这个在web安全测试中是常用的,拦截请求包,修改参数,提交 1.  首先我们需要启动模拟器,并使用本机的代理(加上参数-partition-size的目的是为了可以往a ...

  7. 做个简单的Android列表字母索引控件

    相信大家在许多App中都见到过带字母索引的界面,比如我最近看到的这个开源控件: WaveSideBar 很酷是不是?!!!如果加在例如联系人列表界面上,大大提升了用户体验. 那么这个索引控件要怎么做呢 ...

  8. linux shell 命令学习(5) xxd- make a hexdump or do the reverse.

    对于标准输入或者给定的文件,显示其16进制的内容.也可以反过来进行转换. xxd -h[elp] xxd [options] [infile [outfile]] xxd -r[evert] [opt ...

  9. Java Map各遍历方式的性能比较

    1. 阐述 对于Java中Map的遍历方式,很多文章都推荐使用entrySet,认为其比keySet的效率高很多.理由是:entrySet方法一次拿到所有key和value的集合:而keySet拿到的 ...

  10. 基于web工作流开发

    目前在研发基于web工作流的开发 什么是工作流? 工作流简言之就是: 1.反应业务流程的计算机化的模型. 2.一类能够完全或者部分自动执行的经营过程:(为了提高效率,实现自动化). 3.任务.活动及活 ...