华为桌面未读角标

角标功能支持平台:EMUI4.1及以上,桌面版本:6.3.29
1. 声明权限,如下:

<uses-permission android:name=" com.huawei.android.launcher.permission. CHANGE_BADGE"/>
  1. 在需要进行角标显示地方,采用如下方法传递数据给华为桌面应用
Bundle extra =new Bundle();
extra.putString("package",  "xxxxxx");
extra.putString("class", "yyyyyyy");
extra.putInt("badgenumber", i);
context.getContentResolver().call(Uri.parse("content://com.huawei.android.launcher.settings/badge/"), "change_badge", null, extra);

关键参数说明【红色部分为填充参数】
package:应用包名
class:桌面图标对应的应用入口Activity类
badgenumber:角标数字

示例:

/*
 * 是否支持华为徽章
 * */
private boolean isHuaweiSupport = true;

if (isHuaweiSupport) {
  huaweiShortCut(num);
}

//华为显示角标
private void huaweiShortCut(int aCount) {
    try {
        Bundle extra = new Bundle();
        extra.putString("package", x.app().getApplicationContext().getPackageName());
        extra.putString("class", Utils.AppUtils.getLaunchActivityName());
        extra.putInt("badgenumber", aCount);
        x.app().getApplicationContext().getContentResolver().call(Uri.parse("content://com.huawei.android.launcher.settings/badge/"), "change_badge", null, extra);
    } catch (Exception aE) {
        isHuaweiSupport = false;
    }
}
  1. 特殊情形考虑:

对于第三应用打开和退出时,是否还继续显示角标取决应用传递的值(badgenumber为0时,不显示角标;badgenumber大于0时,显示角标)

当第三方应用package和class发生变化时,需传递该变化后的信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值