package com.example.myapplication; import android.app.Notification; import android.app.NotificationChannel; import android.app.NotificationManager; import android.graphics.Color; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; public class MainActivity extends AppCompatActivity implements View.OnClickListener{ Button btn1; Button btn2; final static String GROUPONE_KEY = "GROUPONE"; final static String GROUPTWO_KEY = "GROUPTWO"; NotificationManager mNotifyMgr; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btn1 = findViewById(R.id.btn1); btn2 = findViewById(R.id.btn2); mNotifyMgr = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); btn1.setOnClickListener(this); btn2.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btn1: notify1(); break; case R.id.btn2: notify2(); break; } } public void notify1() { //ChannelId爲"1",ChannelName爲"Channel1" NotificationChannel channel = new NotificationChannel("1", "Channel1", NotificationManager.IMPORTANCE_DEFAULT); channel.enableLights(true); //是否在桌面icon右上角展示小紅點 channel.setLightColor(Color.GREEN); //小紅點顏色 channel.setShowBadge(true); //是否在久按桌面圖標時顯示此渠道的通知 mNotifyMgr.createNotificationChannel(channel); int notificationId = 0x1234; Notification.Builder builder = new Notification.Builder(this,"1"); //與channelId對應 //icon title text必須包含,不然影響桌面圖標小紅點的展示 builder.setSmallIcon(R.drawable.icon1) .setContentTitle("111") .setContentText("1111"); mNotifyMgr.notify(notificationId, builder.build()); //builder.setGroup(GROUPONE_KEY); } public void notify2() { //ChannelId爲"1",ChannelName爲"Channel1" NotificationChannel channel = new NotificationChannel("2", "Channel2", NotificationManager.IMPORTANCE_DEFAULT); channel.enableLights(true); //是否在桌面icon右上角展示小紅點 channel.setLightColor(Color.GREEN); //小紅點顏色 channel.setShowBadge(true); //是否在久按桌面圖標時顯示此渠道的通知 mNotifyMgr.createNotificationChannel(channel); int notificationId = 0x1235; Notification.Builder builder = new Notification.Builder(this,"2"); //與channelId對應 //icon title text必須包含,不然影響桌面圖標小紅點的展示 builder.setSmallIcon(R.drawable.icon2) .setContentTitle("222") .setContentText("2222"); mNotifyMgr.notify(notificationId, builder.build()); } }
Android 8.0 Notification 寫法Example
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.