Android通知管理类
通知管理类
packagecom。track。beini。navtrack。utils;
importandroid。app。NotificationChannel;
importandroid。app。NotificationManager;
importandroid。app。PendingIntent;
importandroid。app。TaskStackBuilder;
importandroid。content。Context;
importandroid。content。ContextWrapper;
importandroid。content。Intent;
importandroid。content。pm。PackageManager;
importandroid。os。Build;
importandroid。provider。Settings;
importandroid。support。v4。app。NotificationCompat;
importcom。track。beini。navtrack。MainActivity;
importcom。track。beini。navtrack。R;
Createbybeini2019521
通知管理类
publicclassNotificationHelperextendsContextWrapper{
privateNotificationManagermNotificationManager;
privateNotificationChannelmNotificationChannel;
publicstaticfinalStringCHANNELIDdefault;
privatestaticfinalStringCHANNELNAMEDefaultChannel;
privatestaticfinalStringCHANNELDESCRIPTIONthisisdefaultchannel!;
publicNotificationHelper(Contextbase){
super(base);
if(Build。VERSION。SDKINTBuild。VERSIONCODES。O){
mNotificationChannelnewNotificationChannel(CHANNELID,CHANNELNAME,NotificationManager。IMPORTANCEDEFAULT);
mNotificationChannel。setDescription(CHANNELDESCRIPTION);
getNotificationManager()。createNotificationChannel(mNotificationChannel);
}
}
publicNotificationCompat。BuildergetNotification(Stringtitle,Stringcontent){
NotificationCompat。Builderbuildernull;
if(Build。VERSION。SDKINTBuild。VERSIONCODES。O){
buildernewNotificationCompat。Builder(this,CHANNELID);
}else{
buildernewNotificationCompat。Builder(this);
builder。setPriority(NotificationCompat。PRIORITYDEFAULT);
}
builder。setContentTitle(title);
builder。setContentText(content);
builder。setSmallIcon(R。mipmap。iconapp);
点击通知之后需要跳转的页面
IntentresultIntentnewIntent(this,MainActivity。class);
resultIntent。putExtra(goto,message);
使用TaskStackBuilder为通知页面设置返回关系
TaskStackBuilderstackBuilderTaskStackBuilder。create(this);
为点击通知后打开的页面设定返回页面。(在manifest中指定)
stackBuilder。addParentStack(MainActivity。class);
stackBuilder。addNextIntent(resultIntent);
PendingIntentpIntentstackBuilder。getPendingIntent(0,PendingIntent。FLAGUPDATECURRENT);
builder。setContentIntent(pIntent);
builder。setLargeIcon(BitmapFactory。decodeResource(getResources(),R。mipmap。iconapp));
点击自动删除通知
builder。setAutoCancel(true);
returnbuilder;
}
publicvoidnotify(intid,NotificationCompat。Builderbuilder){
if(getNotificationManager()!null){
getNotificationManager()。notify(id,builder。build());
}
}
publicvoidopenChannelSetting(StringchannelId){
IntentintentnewIntent(Settings。ACTIONCHANNELNOTIFICATIONSETTINGS);
intent。putExtra(Settings。EXTRAAPPPACKAGE,getPackageName());
intent。putExtra(Settings。EXTRACHANNELID,channelId);
if(getPackageManager()。resolveActivity(intent,PackageManager。MATCHDEFAULTONLY)!null)
startActivity(intent);
}
publicvoidopenNotificationSetting(){
IntentintentnewIntent(Settings。ACTIONAPPNOTIFICATIONSETTINGS);
intent。putExtra(Settings。EXTRAAPPPACKAGE,getPackageName());
if(getPackageManager()。resolveActivity(intent,PackageManager。MATCHDEFAULTONLY)!null)
startActivity(intent);
}
privateNotificationManagergetNotificationManager(){
if(mNotificationManagernull)
mNotificationManager(NotificationManager)this。getSystemService(this。NOTIFICATIONSERVICE);
returnmNotificationManager;
}
}使用:
privatestaticfinalintDEFAULTID1001;
publicvoidshowNotification(Stringtitle,Stringcontent,Contextcontext){
NotificationHelpermNotificationHelpernewNotificationHelper(context);
NotificationCompat。BuilderbuildermNotificationHelper。getNotification(title,content);
mNotificationHelper。notify(DEFAULTID,builder);
}
腾讯START云游戏新项目公布支持PCTV手机互通IT之家5月17日消息在昨天的腾讯发布会上,腾讯START云游戏多个项目公布,《胡闹厨房》等热门游戏即将上线,支持PCTV手机三端互通。IT之家了解到,早在2019年的英……
薇娅521感恩节嘉宾阵容豪华,电商频频造节目的何在?说起薇娅,她在大家脑海里的第一角色就是网红主播,的确,她是一名网红主播,只不过不同于其他主播的是,薇娅将这个行业做到了极致。最高级的灵魂,是一生把一件事做到极致。薇……
爱奇艺上线会员开放平台北京商报讯(记者魏蔚)5月14日,爱奇艺正式上线会员开放平台。通过该平台,爱奇艺一方面向内容提供商、商品提供商、服务提供商和技术提供商等合作伙伴提供营销平台,另一方面为用户提供……
拼夕夕创始人黄峥带着4700亿美元悄悄地退休拼夕夕创始人黄峥带着4700亿美元悄悄地退休了,很多人都说黄峥跑得真快!马云说:这孩子打小就聪明,他现在是胜利者,但很快就会落荒而逃。拼夕夕去年损失了近200亿元。自成立以来,……
微信不小心删除了怎么办?如何恢复数据?友友问微信删除了怎么办?如何恢复数据?这个问题很专业,我只能用我自己使用微信的经验告诉你,很可惜,微信上的资料确认是你操作删除了,靠自己的权限是不好恢复了,如果可能是暂时找不到……
西安半导体产业怪相产值千亿,却难留十万芯片人才十城造芯记近几年,国际关系的不确定性让原本基于高度协作的全球芯片产业链备受冲击,即使造芯不像造原子弹可以关起门来另起炉灶,在封闭的体系中获取胜利的果实,但警惕无芯可用的危机,我们不得不重……
8款机型今日同升EMUI9。0麒麟960老旗舰有福了系统是手机的软实力,老机型升级最新系统,不仅能改善流畅度、耗电量,还会增加不少的新功能。今日,华为官方宣布,Mate9、Mate9保时捷设计、Mate9Pro、P10、P……
热闹了!中国电信也要玩AIM消息,5G消息摆哪儿?新5G消息从中国电信官网获悉,3月18日,信元公众信息发展有限责任公司发布5G消息回落解决方案服务商招募资格预审公告,招募5G消息的回落解决方案为AIM类消息的产品研发工作,招……
为什么7Zip至今没取代ZIP?很简单,压缩率不重要,算法也不重要,只有简单好用才是王道。zip除了早,一无是处,然而现在是个电脑就能打开,很方便。其次普及的是rar,分卷压缩能力比较出名,第二早。在注……
拼多多店大欺客新人上线就送一百块红包!!!相信最近很多人都看到过拼多多的这条广告。我是一名老拼多多用户,刚好过年期间也有拉新人的活动,我就想着给我妈也下载一个,新电话号码,刚注册的微信……
元宇宙物业管理猜想元宇宙物业管理猜想刘昌兵脸书(Facebook公司)的创始人马克艾略特扎克伯格在2021年宣布将公司名称改为Meta(元宇宙英文名metaverse的前缀元的意思)……
元宇宙,我喜欢理解为诸天万界首先先声明几点:元宇宙虚拟游戏世界;区块链虚拟货币;元宇宙是虚拟和现实的升级,是线上和线下的融合。下面是自己对初级元宇宙的一些想法。初级的元宇宙应……