android 角标数字管理,Android应用推送角标设置方法

原标题:Android应用推送角标设置方法

Android最初原生是没有角标的,各大手机厂商推出了角标,适配也是相对麻烦,需要去适配各家,这里做了整理及使用方法

先把工具类贴出来

importandroid.app.Notification;

importandroid.app.NotificationChannel;

importandroid.app.NotificationManager;

importandroid.app.PendingIntent;

importandroid.content.AsyncQueryHandler;

importandroid.content.ComponentName;

importandroid.content.ContentResolver;

importandroid.content.ContentValues;

importandroid.content.Context;

importandroid.content.Intent;

importandroid.content.pm.PackageManager;

importandroid.content.pm.ResolveInfo;

importandroid.graphics.BitmapFactory;

importandroid.net.Uri;

importandroid.os.Build;

importandroid.os.Bundle;

importandroid.os.Handler;

importandroid.support.v4.app.NotificationCompat;

importandroid.text.TextUtils;

importandroid.util.Log;

importjava.lang.reflect.Field;

importjava.lang.reflect.Method;

importjava.util.ArrayList;

importjava.util.List;

importcn.com.goldwind.eis.R;

importcn.com.goldwind.eis.ui.activity.MainActivity;

/**

* 应用角标工具类

*/

publicclassAppShortCutUtil{

privatestaticintnotificationId = 0;

publicstaticbooleansetCount(finalintcount, finalContext context){

if(count >= 0&& context != null) {

Log.d( "BRAND", Build.BRAND);

switch(Build.BRAND.toLowerCase) {

case"xiaomi":

newHandler.postDelayed( newRunnable {

@Override

publicvoidrun{

setNotificationBadge(count, context);

}

}, 3000

returntrue;

case"huawei":

returnsetHuaweiBadge(count, context);

case"honor":

returnsetHonorBadge(count, context);

case"samsung":

returnsetSamsungBadge(count, context);

case"oppo":

returnsetOPPOBadge(count, context) || setOPPOBadge2(count, context);

case"vivo":

returnsetVivoBadge(count, context);

case"lenovo":

returnsetZukBadge(count, context);

case"htc":

returnsetHTCBadge(count, context);

case"sony":

returnsetSonyBadge(count, context);

default:

returnsetNotificationBadge(count, context);

}

} else{

returnfalse;

}

}

publicstaticbooleansetNotificationBadge(intcount, Context context){

NotificationManager notificationManager = (NotificationManager) context.getSystemService

(Context.NOTIFICATION_SERVICE);

if(notificationManager == null) {

returnfalse;

}

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值