Android 关于集成环信如何设置桌面角标

Posted 环信即时通讯云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 关于集成环信如何设置桌面角标相关的知识,希望对你有一定的参考价值。

1、小米角标:


MIUI6-MIUI11桌面应用角标适配方法

通过反射调用设置桌面角标,参考代码如下:
 

try 
    Field field = notification.getClass().getDeclaredField(“extraNotification”);
    Object extraNotification = field.get(notification);
    Method method = extraNotification.getClass().getDeclaredMethod(“setMessageCount”, int.class);
    method.invoke(extraNotification, mCount);
 catch (Exception e) 
    e.printStackTrace();

MIUI12及以后桌面应用角标适配方法

由于Google屏蔽了hideAPI的反射调用,因此MIUI12及以后可以使用notification.number,可参照android开发者文档 Notification  |  Android Developers,参考代码如下:

Notification notification = new Notification.Builder(context, CHANNEL_ID)
.setSmallIcon(R.drawable.notification_icon)
.setContentTitle(textTitle)
.setContentText(textContent)
.setNumber(int number)
.build();

如何判断MIUI版本

可参考文档https://dev.mi.com/console/doc/detail?pId=1312,其中6.1节有具体方法说明。

桌面应用角标问题Q&A

文档中心



2、华为角标:


需要在消息扩展里设置上应用入口activity,如demo是com.hyphenate.chatuidemo.ui.SplashActivity
 

// 设置自定义推送提示
JSONObject extObject = new JSONObject();
try 
extObject.put("em_huawei_push_badge_class", "com.hyphenate.chatuidemo.ui.SplashActivity");
 catch (JSONException e) 
e.printStackTrace();

// 将推送扩展设置到消息中
message.setAttribute("em_apns_ext", extObject);

3、vivo角标:


“桌面图标角标”默认关闭

接入成功后,“桌面图标角标”默认关闭,需要用户手动开启。

开启路径:“设置”-“通知与状态栏”-“应用通知管理”-应用名称-“桌面图标角标”。

未成功接入“桌面图标角标”的应用,无“桌面图标角标”选项。

备注:视OS版本差异,“桌面图标角标”名称可能为“应用图标标记”或“桌面角标”。

具体实现

a. 添加权限:

b. 应用在需要显示桌面角标的场景,通过广播将信息发送给vivoLauncher:

广播参数:

action:launcher.action.CHANGE_APPLICATION_NOTIFICATION_NUM

packageName:应用包名

className:主类名

notificationNum:未读消息数目

简单示例:
 

Intent intent = new Intent();

int missedCalls = 10;

intent.setAction("launcher.action.CHANGE_APPLICATION_NOTIFICATION_NUM");

intent.putExtra("packageName", "com.android.xxxx");

intent.putExtra("className", "com.android.xxxx.Mainxxxx");

intent.putExtra("notificationNum", missedCalls);

intent.addFlags(Intent.FLAG_RECEIVER_INCLUDE_BACKGROUND);

sendBroadcast(intent);

注意:

在8.0上,还需要给Intent加上下面的flag

Intent.FLAG_RECEIVER_INCLUDE_BACKGROUND



4、oppo角标:


需要申请Push角标功能

【应用服务】教你如何给应用软件申请Push角标功能 - 应用 - 开发者社区



5、魅族角标:


不支持

原文地址:https://www.imgeek.org/article/825361375

以上是关于Android 关于集成环信如何设置桌面角标的主要内容,如果未能解决你的问题,请参考以下文章

关于推送的角标的设置

android设置消息角标

环信IM集成指南Android 端常见问题整理

环信IM集成指南Android 端常见问题整理

环信IM集成指南Android 端常见问题整理

集成环信IM入门教程——如何导入及运行Android demo