package com.hss01248.notifyutil; import android.app.Activity; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import com.hss01248.notifyutil.builder.BigPicBuilder; import com.hss01248.notifyutil.builder.BigTextBuilder; import com.hss01248.notifyutil.builder.MailboxBuilder; import com.hss01248.notifyutil.builder.MediaBuilder; import com.hss01248.notifyutil.builder.ProgressBuilder; import com.hss01248.notifyutil.builder.SingleLineBuilder; /** * Created by Administrator on 2017/2/13 0013. */ public class NotifyUtil { public static Context context; public static NotificationManager getNm() { return nm; } private static NotificationManager nm; public static void init(Context context1){ context = context1; nm = (NotificationManager) context1 .getSystemService(Activity.NOTIFICATION_SERVICE); } public static SingleLineBuilder buildSimple(int id,int smallIcon,CharSequence contentTitle ,CharSequence contentText,PendingIntent contentIntent){ SingleLineBuilder builder = new SingleLineBuilder(); builder.setBase(smallIcon,contentTitle,contentText) .setId(id) .setContentIntent(contentIntent); return builder; } public static ProgressBuilder buildProgress(int id,int smallIcon,CharSequence contentTitle,int progress,int max){ ProgressBuilder builder = new ProgressBuilder(); builder.setBase(smallIcon,contentTitle,progress+"/"+max) .setId(id); builder.setProgress(max,progress,false); return builder; } public static BigPicBuilder buildBigPic(int id,int smallIcon,CharSequence contentTitle,CharSequence contentText,CharSequence summaryText){ BigPicBuilder builder = new BigPicBuilder(); builder.setBase(smallIcon,contentTitle,contentText).setId(id); builder.setSummaryText(summaryText); return builder; } public static BigTextBuilder buildBigText(int id,int smallIcon,CharSequence contentTitle,CharSequence contentText){ BigTextBuilder builder = new BigTextBuilder(); builder.setBase(smallIcon,contentTitle,contentText).setId(id); //builder.setSummaryText(summaryText); return builder; } public static MailboxBuilder buildMailBox(int id,int smallIcon,CharSequence contentTitle){ MailboxBuilder builder = new MailboxBuilder(); builder.setBase(smallIcon,contentTitle,"").setId(id); return builder; } public static MediaBuilder buildMedia(int id,int smallIcon,CharSequence contentTitle,CharSequence contentText){ MediaBuilder builder = new MediaBuilder(); builder.setBase(smallIcon,contentTitle,contentText).setId(id); return builder; } /*public static CustomViewBuilder buildCustomView(BigPicBuilder builder){ } */ public static void notify(int id,Notification notification){ nm.notify(id,notification); } public static PendingIntent buildIntent(Class clazz){ int flags = PendingIntent.FLAG_UPDATE_CURRENT; Intent intent = new Intent(NotifyUtil.context, clazz); intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_NEW_TASK); PendingIntent pi = PendingIntent.getActivity(NotifyUtil.context, 0, intent, flags); return pi; } public static void cancel(int id){ if(nm!=null){ nm.cancel(id); } } public static void cancelAll(){ if(nm!=null){ nm.cancelAll(); } } }