您的位置:首页 > 移动开发 > Android开发

Android下Notification的构造和使用

2015-10-12 07:54 417 查看
部分内容转自:http://www.piaoyi.org/mobile-app/Android-setLatestEventInfo-Handler-SimpleDateFormat.html

由于API版本的更新,Notification的构造方法在不断变化。现在最新版本已经是API  level  23(Android 6.0) .

其中 setLatestEventInfo() 和 new Notification() 方法都被deprecate,不建议使用,需要用新的方法去实现,

由于版本问题,困然了半天,然后终于基本解决了。

先说下API level ,由于使用的SDK 的版本不同,Notification的使用方法不同。

1 丶低于API Level 11版本,也就是Android 2.3.3以下的系统中,setLatestEventInfo()函数是唯一的实现方法。

Intent intent = new Intent(this,MainActivity);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_ONE_SHOT);
notification.setLatestEventInfo(context, title, message, pendingIntent);
manager.notify(id, notification); 2丶 高于API Level 11,低于API Level 16 (Android 4.1.2)版本的系统中,可使用Notification.Builder来构造函数。但要使用getNotification()来使notification实现。
Notification.Builder builder = new Notification.Builder(context)
.setAutoCancel(true)
.setContentTitle("title")
.setContentText("describe")
.setContentIntent(pendingIntent)
.setSmallIcon(R.drawable.ic_launcher)
.setWhen(System.currentTimeMillis())
.setOngoing(true);
notification=builder.getNotification(); 3丶高于API Level 16的版本,就可以用Builder和build()函数来配套的方便使用notification了。
Notification notification = new Notification.Builder(context)
.setAutoCancel(true)
.setContentTitle("title")
.setContentText("describe")
.setContentIntent(pendingIntent)
.setSmallIcon(R.drawable.ic_launcher)
.setWhen(System.currentTimeMillis())
.build();

现在主要是level 16以上的  所以将简单演示下(用Android studio写)。
做了个点击按钮进行弹出状态框提示,也就是一些手机APP的提示。

1、首先在main.xml下创建个Button按钮



2、然后在main.java下设置Button的点击事件,当点击时,调用fun_statusbarnotification()方法弹出状态框。



3、填写fun_statusbarno
4000
tification()方法



4、在模拟器上运行,点击按钮。



5、调用fun_statusbarnotification()方法,下拉菜单即可看到状态框。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android api