android 接电话的时候系统声音,android跳转系统通知页面管理声音和振动

android系统中通知栏的碎片化严重,各个厂商和版本的适配太繁琐。

这里参考微信创建好应用的通知渠道,直接跳转系统通知设置页面,用户自己设置

ps:厂商不同可能跳转的intentAction会有差异,这里只测试了华为和小米的

/**

* 跳转到通知管理

*

* @param channelId 通知渠道ID

*/

public static void enterNotificationSetting(Context context, String channelId) {

String packageName = context.getPackageName();

try {

// 根据通知栏开启权限判断结果,判断是否需要提醒用户跳转系统通知管理页面

Intent intent = new Intent();

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {

String intentAction = QMUIDeviceHelper.isMIUI() ? Settings.ACTION_APP_NOTIFICATION_SETTINGS : Settings.ACTION_CHANNEL_NOTIFICATION_SETTINGS;

intent.setAction(intentAction);

//这种方案适用于 API 26, 即8.0(含8.0)以上可以用

intent.putExtra(Settings.EXTRA_APP_PACKAGE, packageName);

intent.putExtra(Settings.EXTRA_CHANNEL_ID, channelId);

}

//这种方案适用于 API21——25,即 5.0——7.1 之间的版本可以使用

intent.putExtra("app_package", packageName);

intent.putExtra("app_uid", channelId);

context.startActivity(intent);

} catch (Exception e) {

e.printStackTrace();

// 出现异常则跳转到应用设置界面

Intent intent = new Intent();

intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);

Uri uri = Uri.fromParts("package", packageName, null);

intent.setData(uri);

context.startActivity(intent);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值