【Android 学习】小知识Notification的新旧用法

简介: 版权声明:本文为博主原创文章,转载请注明出处http://blog.csdn.net/u013132758。 https://blog.csdn.net/u013132758/article/details/51225680 最近学习AIDL(Android Interface Definition Laguage,这个将在后面主要介绍)遇到Notification无法创建setLatestEventInfo方法不存在。
版权声明:本文为博主原创文章,转载请注明出处http://blog.csdn.net/u013132758。 https://blog.csdn.net/u013132758/article/details/51225680

最近学习AIDL(Android Interface Definition Laguage,这个将在后面主要介绍)遇到Notification无法创建setLatestEventInfo方法不存在。原因是因为Android api11之后就废弃掉了这个方法,而采用Builder方法来创建和设置Notification。大家可以看Android  API文档http://www.android-doc.com/reference/android/app/Notification.html

下面我们来看一下两种方法的对比:

api 11 版本之前:
 

//显示通知信息  
    protected void showNotification() {  
        NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);  
//              Notification notification = new Notification(this,R.drawable.ic_launcher);  
        Notification notification = new Notification(R.drawable.ic_launcher,"",System.currentTimeMillis() );  
        PendingIntent contentIndent = PendingIntent.getActivity(MainActivity.this, 0, new Intent(MainActivity.this,MainActivity.class), PendingIntent.FLAG_UPDATE_CURRENT);  
        notification.setLatestEventInfo(MainActivity.this, "您的BMI值过高", "通知监督人", contentIndent);  
        //加i是为了显示多条Notification  
        notificationManager.notify(i,notification);  
        i++;  
    }  

api  11版本后:

protected void showNotification2() {  
        NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);  
        Builder builder = new Notification.Builder(MainActivity.this);  
        PendingIntent contentIndent = PendingIntent.getActivity(MainActivity.this, 0, new Intent(MainActivity.this,MainActivity.class), PendingIntent.FLAG_UPDATE_CURRENT);  
        builder . setContentIntent(contentIndent) .setSmallIcon(R.drawable.ic_launcher)//设置状态栏里面的图标(小图标)                    
               .setLargeIcon(BitmapFactory.decodeResource(res, R.drawable.i5))//下拉下拉列表里面的图标(大图标)        
               .setTicker("this is bitch!") //设置状态栏的显示的信息  
               .setWhen(System.currentTimeMillis())//设置时间发生时间  
               .setAutoCancel(true)//设置可以清除  
               .setContentTitle("This is ContentTitle")//设置下拉列表里的标题  
               .setContentText("this is ContentText");//设置上下文内容  
        Notification notification = builder.getNotification();  
        //加i是为了显示多条Notification  
        notificationManager.notify(i,notification);  
    }  


相关文章
|
2月前
|
XML 缓存 Android开发
Android开发,使用kotlin学习多媒体功能(详细)
Android开发,使用kotlin学习多媒体功能(详细)
105 0
|
4月前
|
存储 安全 Linux
Android安全启动学习(四):device-mapper-verity (dm-verity)和哈希树
Android安全启动学习(四):device-mapper-verity (dm-verity)和哈希树
134 0
|
2天前
|
定位技术 Android开发
Intent在Android中的几种用法
Intent在Android中的几种用法
|
19天前
|
网络协议 Shell Android开发
Android 深入学习ADB调试原理(1)
Android 深入学习ADB调试原理(1)
26 1
|
19天前
|
缓存 网络协议 编译器
针对Android系统工程师的C/C++学习目录
针对Android系统工程师的C/C++学习目录
6 0
|
3月前
|
Java Android开发 数据安全/隐私保护
安卓逆向 -- IDA基本用法
安卓逆向 -- IDA基本用法
47 0
|
4月前
|
开发框架 物联网 数据库
89个android学习样例源码
89个android学习样例源码
78 0
|
4月前
|
Java Android开发 C++
2023安卓逆向 -- JNI学习(从开发到反编译)
2023安卓逆向 -- JNI学习(从开发到反编译)
29 0
|
4月前
|
Android开发
Android源码学习(五):AVB2.0-libavb库介绍2
Android源码学习(五):AVB2.0-libavb库介绍2
119 0
|
4月前
|
安全 算法 Android开发
Android安全启动学习(五):Android Verified Boot 2.0
Android安全启动学习(五):Android Verified Boot 2.0
292 0