Android新荣耀手机角标只增不减

荣耀不再是华为

2020年11月17日,深圳市智信新信息技术有限公司完成了对荣耀品牌业务资产的全面收购,自此华为将不再持有新荣耀公司的任何股份。

新荣耀手机包名变更

新荣耀手机
桌面包名:“com.hihonor.android.launcher”
Build.MANUFACTURER:“HONOR”

华为/鸿蒙手机
桌面包名:com.huawei.android.launcher
Build.MANUFACTURER:HUAWEI

兼容新荣耀角标更新

public void setBadgeNum(int num) {
String URI_OLD = "content://com.huawei.android.launcher.settings/badge/";
String URI_NEW = "content://com.hihonor.android.launcher.settings/badge/"; Uri uri = Uri.parse(URI_NEW);
String type = getContentResolver().getType(uri);
if (TextUtils.isEmpty(type)) {
uri = Uri.parse(URI_OLD);
type = getContentResolver().getType(uri); 
	if (TextUtils.isEmpty(type)) {
		uri = null; 
	}
}
try {
Bundle extra = new Bundle(); 
extra.putString("package", "xxxxxx"); 
extra.putString("class", "yyyyyy"); 
extra.putInt("badgenumber", num);
if (uri != null) {
getContentResolver().call(uri, "change_badge", null, extra);
}
} catch (Exception e) {
e.printStackTrace(); }
}

咨询华为客服

客户支持工程师
2021-11-05 13:59:56 GMT+08:00
尊敬的开发者,您好,
关于您的反馈的问题,
问题解决方案:
https://developer.huawei.com/consumer/cn/doc/30802这个方法是华为桌面app提供的,设置角标也是华为桌面的能力,方法中包含华为桌面的包名(com.huawei.android.launcher)。新荣耀使用的magicUI是自己维护的,桌面也不再是华为桌面。因此建议咨询荣耀的人如何设置桌面角标

合作愉快。
华为开发者联盟开发者支持团队

咨询荣耀客服

尊敬的荣耀用户
您好,关于您所反馈的问题,给您提供的资料和反馈渠道如下:
邮箱:thirdparty_cooperation@hihonor.com
指导书可见附件
若您还有任何疑问,可拨打荣耀服务热线4006966666;
或扫描下方二维码关注荣耀微信公众号【荣耀客服】,我们会竭诚为您服务!

附件

《荣耀桌面角标开发指导书(国内更新》
一 简介
1.1 范围
荣耀桌面角标开发指导书
本文档主要描述荣耀桌面未读角标对外接口。
1.2 目的
公布对外接口给第三方应用,方便第三方应用通过调用接口实现在荣耀桌面上显示未读数 字角标。
二 正文
2.1 荣耀对外接口方式描述 对外提供数据库URI、操作数据库的权限,通过特定的接口方式,第三方应用将需要显示
的角标数量、应用的信息传递给荣耀桌面,以便荣耀桌面显示对应的未读角标信息。
2.2 显示样式
2.3 具体接口使用步骤 2.3.1 声明权限

2.3.2 在需要进行角标显示的地方,采用如下方法传递数据给荣耀桌面
public void setBadgeNum(int num) {
String URI_OLD = “content://com.huawei.android.launcher.settings/badge/”;
2021-10-14 第1页, 共4页

String URI_NEW = “content://com.hihonor.android.launcher.settings/badge/”; Uri uri = Uri.parse(URI_NEW);
String type = getContentResolver().getType(uri);
if (TextUtils.isEmpty(type)) {
uri = Uri.parse(URI_OLD);
type = getContentResolver().getType(uri); if (TextUtils.isEmpty(type)) {
uri = null; }
}
try {
Bundle extra = new Bundle(); extra.putString(“package”, “xxxxxx”); extra.putString(“class”, “yyyyyy”); extra.putInt(“badgenumber”, num);
if (uri != null) {
getContentResolver().call(uri, “change_badge”, null, extra);
}
} catch (Exception e) {
e.printStackTrace(); }
}
关键参数说明:
package 应用包名
badgenumber 角标数字
参数
说明
class
桌面图标对应的应用入口Activity类
2021-10-14
第2页, 共4页

2.3.3 特殊情形说明
⚫ 对于第三方应用打开和退出时,是否还继续显示角标取决应用传递的值(badgenumber 为0时,不显示角标;badgenumber大于0时,显示角标)。
⚫ 当第三方应用package和class发生变化时,需传递该变化后的信息。 2.4 设备制造商信息
通过Build.MANUFACTURER获取的信息为HONOR。
2.5 谷歌原点角标显示方式
谷歌Android O版本后支持原点显示,可以使用setShowBadge(boolean)方法。
https://developer.android.com/reference/android/app/NotificationChannel
2.6 桌面包名 桌面包名:com.hihonor.android.launcher
三 示例
建议应用发消息通知时,使用谷歌原点角标显示方式后,根据设备制造商或者桌面包名判 断,如果是荣耀机器,则按照荣耀数字角标方式进行处理。
boolean mIsSupportedBade = true;
if (mIsSupportedBade) {
setBadgeNum(num);
}
public void setBadgeNum(int num) {
String URI_OLD = “content://com.huawei.android.launcher.settings/badge/”; String URI_NEW = “content://com.hihonor.android.launcher.settings/badge/”; Uri uri = Uri.parse(URI_NEW);
String type = getContentResolver().getType(uri);
if (TextUtils.isEmpty(type)) {
uri = Uri.parse(URI_OLD);
type = getContentResolver().getType(uri);
2021-10-14
第3页, 共4页

if (TextUtils.isEmpty(type)) { uri = null;
} }
try {
Bundle extra = new Bundle();
extra.putString(“package”, " com.example.myapplication"); extra.putString(“class”, " com.example.myapplication.MainActivity"); extra.putInt(“badgenumber”, num);
if (uri != null) {
getContentResolver().call(uri, “change_badge”, null, extra); }
} catch (Exception e) { mIsSupportedBade=false;
} }
2021-10-14
第4页, 共4页

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值