2020年1月12日 星期日

[ Android Studio ] 訊息通知Notification的方法


出現通知所顯示的下拉清單裡的訊息方法如下:

一、版本問題:
API26以上就要設定NotificationChannel為通知頻道NotificationChannel(id,name,NotificationManager.IMPORTANCE_HIGH);



二、權限:
//喚醒鎖給予權限如下:就是鎖住了也能通知
<uses-permission android:name="android.permission.WAKE_LOCK" />
//手機震動提示給予權限如下:
<uses-permission android:name="android.permission.VIBRATE"/>
//手機閃光給予權限如下:
<uses-permission android:name="android.permission.FLASHLIGHT" />

三、Notification.Builder以下用法
setSmallIcon(int icon):小圖示,設置狀態列裡面的圖示 32×32
setContentTitle():設置下拉清單裡的標題
setContentText():設置下拉清單裡的內容
setAutoCancel(false):設置自動取消
setOnlyAlertOnce(true):設置僅一次警報
setLargeIcon(Bitmap b) :大圖示 Bitmap物件 64×64
setWhen(long when):設定發送通知時間
setTicker():設置狀態列的顯示的資訊
setChannelId():設置頻道 id
setAutoCancel(boolean autoCancel):設置通知被使用者點擊後是否清除
setDefaults():設定聲音、震動、閃屏等,用法如下:
Notification.DEFAULT_ALL:聲音、震動、閃屏都使用預設值
Notification.DEFAULT_SOUND:使用聲音提示
Notification.DEFAULT_LIGHTS:使用閃光LED提示
Notification.DEFAULT_VIBRATE:使用手機震動提示

addAction(圖,名稱,動作):addAction(圖示, "button1",執行的intent名稱):新增按鈕,按下後執行
setLatestEventInfo(context, notifTitle, notifMessage, pIntent);
setStyle(new Notification.MediaStyle()
setShowActionsInCompactView(1)
setMediaSession(mMediaSession.getSessionToken())
setContentIntent(執行的intent名稱):按下後直接執行
setPriority(NotificationCompat.PRIORITY_DEFAULT)

補充:若使用 手機震動提示 特效,必須先進行以下設定
setVibrate(long[] pattern):設定震動模式,由停止時間、震動時間組成的 Pattern
setSound(Uri sound):設定指定的鈴聲
setLights(int argb, int onMs, int offMs):設定燈光閃爍的顏色、on, off時間
.setVisibility(Notification.VISIBILITY_PRIVATE),用法如下:
VISIBILITY_PUBLIC:鎖屏上顯示完整訊息
VISIBILITY_PRIVATE:基本訊息
VISIBILITY_SECRET:顯示少量信息
*/



影片教學:
 

沒有留言:

張貼留言

影片的問題請留在影片的留言區裡。
部落格不會另外通知給我,所以很難發現你有留言。