Android8.0之后自定义通知铃声与震动等设置的方法

在Android O之后应用发送通知必须要使用NotificationChannel来发送通知,但是会发现NotificationChannel在创建之后不管怎么修改设置都是无效的,查看源码才发现是因为NotificationChannel创建之后就无法主动修改铃声、震动等设置。

但是在设置>应用>通知管理里面是可以去对对应的NotificationChannel进行铃声、震动等设置的,查看设置源码发现设置里面是使用以下方法来对对应应用的NotificationChannel进行更新。

static INotificationManager sINM = INotificationManager.Stub.asInterface(
            ServiceManager.getService(Context.NOTIFICATION_SERVICE));

        try {
            sINM.updateNotificationChannelForPackage(packageName, uid, channel);
        } catch (Exception e) {
            Log.w("Notification", "Error calling NoMan", e);
        }

记得添加权限

<uses-permission android:name="android.permission.STATUS_BAR_SERVICE" />

好了,现在可以正常的更新NotificationChannel了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 点击查看原文 Web SDK 开发手册 SDK 概述 网易云信 SDK 为 Web 应用提供一个完善的 IM 系统...
    layjoy阅读 14,779评论 0 15
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,916评论 1 32
  • 版权声明:本文为博主原创文章,未经博主允许不得转载。微博:厉圣杰源码:AndroidDemo/Notificati...
    牙锅子阅读 9,140评论 11 47
  • 原文出处: http://www.androidchina.net/6174.html Notification在...
    木木00阅读 14,249评论 3 32
  • 蠢蠢欲动的眼神浮动着我的局促 你是我指缝间透明微弱的香 轻轻地叹息声在耳后响起 你是欢快悠闲的午后小太阳 朦胧的碎...
    Am_or阅读 1,679评论 4 3

友情链接更多精彩内容