Android Notification不显示浮动通知,不显示锁屏通知

    xiaoxiao2021-03-25  104

    问题

    不显示浮动通知,不显示锁屏通知。

    解决

    1. 首先手机得先开启权限

    应用详情 -> 自定义通知 -> 开启对应的权限

    2. 设置Notification的flag

    Notification的flag有5个。

    FLAG_AUTO_CANCEL 当通知被用户点击之后会自动被清除(cancel)

    FLAG_INSISTENT 在用户响应之前会一直重复提醒音和震动,(如果在default那里开启的话)。

    FLAG_ONGOING_EVENT 表示正在运行的事件,例如下载进度。不能清除。

    FLAG_NO_CLEAR 通知栏点击“清除”按钮时,该通知将不会被清除。或者没有清除的按钮

    FLAG_FOREGROUND_SERVICE 表示当前服务是前台服务,简单通知。默认

    重点来了,如果设置了FLAG_ONGOING_EVENT 或者 FLAG_NO_CLEAR 是不能点击清除的,还会导致不会显示悬浮通知和锁屏通知。所以,我们不设置或者设置为FLAG_AUTO_CANCEL就可以了

    桌面显示通知数量

    不是所有桌面都可以的。 桌面是第三方的应用了。你的应用不能去修改它的东西。

    但是miui的系统对系统有做手脚。通过反射可以设置桌面图标消息数量。

    设置好了notification之后,在下面加下面一段代码就可以了。

    //小米显示桌面消息数量 try { Field field = notification.getClass().getDeclaredField("extraNotification"); Object extraNotification = field.get(notification); Method method = extraNotification.getClass().getDeclaredMethod("setMessageCount", int.class); method.invoke(extraNotification, 这里填写数量); } catch (Exception e) { e.printStackTrace(); }
    转载请注明原文地址: https://ju.6miu.com/read-22778.html

    最新回复(0)