最近学习android,notifaction的很多方法参数都已经过期了,虽然能用但是作为一个强迫症患者,看到一个删除线总是不爽的,下面是我自己学习的时候随便归纳的,方便以后查阅
import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.support.v4.app.NotificationCompat; /** * Created by ios13 on 17/9/7. */ public class NotifactionUtil { private Context context; private NotificationManager notificationManager; private int ID = 0; /** * 初始化 * * @param context */ public NotifactionUtil(Context context, int ID) { super(); this.context = context; this.ID = ID; this.notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); } /** * 创建无跳转提示框 * * @param ticker 提示id * @param icon 提示图标 * @param title 提示标题 * @param text 提示副标题(内容) * @param when 提示时间 System.currentTimeMillis()为立刻提示 */ public void createNotifactionOfunInter(String ticker, int icon, String title, String text, long when) { NotificationCompat.Builder builder = new NotificationCompat.Builder(context); builder.setTicker(ticker); builder.setSmallIcon(icon); builder.setContentText(text); builder.setContentTitle(title); builder.setWhen(when); Notification notification = builder.build(); notificationManager.notify(ID, notification); } /** * 创建跳转提示框 * * @param ticker 提示id * @param icon 提示图标 * @param title 提示标题 * @param text 提示副标题(内容) * @param when 提示时间 * @param cls 跳转的activity * @param bundle bundle传参数 */ public void createNotifactionOfInter(String ticker, int icon, String title, String text, long when, Class cls, Bundle bundle) { NotificationCompat.Builder builder = new NotificationCompat.Builder(context); builder.setTicker(ticker); builder.setSmallIcon(icon); builder.setContentText(text); builder.setContentTitle(title); builder.setWhen(when); builder.setDefaults(Notification.DEFAULT_ALL); //设置默认的提示音,振动方式,灯光 builder.setAutoCancel(true);//打开程序后图标消失 Intent intent = new Intent(context, cls); intent.putExtras(bundle); PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0); builder.setContentIntent(pendingIntent); Notification notification = builder.build(); notificationManager.notify(ID, notification); } }