如何清除android中的旧徽章计数 [英] How to clear old badge count in android

查看:129
本文介绍了如何清除android中的旧徽章计数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我设置为 0表示其显示的徽章计数为 1。如何清除我的旧徽章计数。

I set "0" means its showing badge count was "1". how to clear my old badge count.

//徽章计数设置方法

//Badge count set method

  public static void setBadge(Context mContext, int count) {
    String launcherClassName = getLauncherClassName(mContext);
    if (launcherClassName == null) {
        return;
    }
    Intent intent = new Intent("android.intent.action.BADGE_COUNT_UPDATE");
    intent.putExtra("badge_count", count);
    intent.putExtra("badge_count_package_name", mContext.getPackageName());
    intent.putExtra("badge_count_class_name", launcherClassName);
    mContext.sendBroadcast(intent);
}

//查找我们的应用程序,并在此处返回应用程序包名称。

//Find out our app and here return app package name.

 public static String getLauncherClassName(Context mContext) {

    PackageManager pm = mContext.getPackageManager();
    Intent intent = new Intent(Intent.ACTION_MAIN);
    intent.addCategory(Intent.CATEGORY_LAUNCHER);
    List<ResolveInfo> resolveInfos = pm.queryIntentActivities(intent, 0);
    for (ResolveInfo resolveInfo : resolveInfos) {
        String pkgName = resolveInfo.activityInfo.applicationInfo.packageName;
        if (pkgName.equalsIgnoreCase(mContext.getPackageName())) {
            String className = resolveInfo.activityInfo.name;
            return className;
        }
    }
    return null;
}


推荐答案

如果使用 https://github.com/leolin310148/ShortcutBadger 库,方法如下: p>

This can be done if using the https://github.com/leolin310148/ShortcutBadger library by calling the method as follows:

ShortcutBadger.applyCount(Context context, int badgeCount)

//or

ShortcutBadger.removeCount(Context context)

这篇关于如何清除android中的旧徽章计数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆