Notification的作用
能夠在通知欄展示一些信息
Notification介紹
notification-callouts_2x.png
圖片摘自Google Android developer guide
- 小圖標(biāo),對(duì)應(yīng)于
setSmallIcon()。 - App的名稱,由系統(tǒng)提供。
- 時(shí)間戳,由系統(tǒng)提供,你也可以調(diào)用
setWhen()進(jìn)行設(shè)置時(shí)間戳,也可以調(diào)用setShowWhen(false)進(jìn)行隱藏 - 大圖標(biāo),這是可選擇的(通常僅用于聯(lián)系人的照片,不要將它用于App的圖標(biāo)),可以通過(guò)調(diào)用
setLargeIcon()進(jìn)行設(shè)置。 - 標(biāo)題,這是可選擇的,可以通過(guò)調(diào)用
setContentTitle()進(jìn)行設(shè)置。 - 內(nèi)容,這是可選擇的,可以通過(guò)調(diào)用
setContentText()進(jìn)行設(shè)置。
Notification使用
// 創(chuàng)建Notification
Notification.Builder builder = null;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
// channelId是一個(gè)獨(dú)一無(wú)二的分組id
builder = new Notification.Builder(this, channelId);
} else {
builder = new Notification.Builder(this);
}
Notification notification = builder
.setSmallIcon(R.mipmap.ic_launcher)
.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher))
.setContentTitle("支付寶通知")
.setContentText("你有一張券即將到期:花唄周卡-餓了么品質(zhì)聯(lián)盟紅...")
.setShowWhen(true)
.setAutoCancel(true)
.build();
// 獲取系統(tǒng)的NotificationManager
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
// 設(shè)置channel
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
NotificationChannel channel = new NotificationChannel(channelId, channelName, NotificationManager.IMPORTANCE_DEFAULT);
notificationManager.createNotificationChannel(channel);
}
// 發(fā)送通知,notifyId表示當(dāng)前這條通知消息在此App中的獨(dú)一無(wú)二標(biāo)示符
notificationManager.notify(notifyId, notification);
效果圖如下:

WechatIMG42.jpeg
