android 通知权限设置在哪,Android 打开消息通知权限
转载自https://blog.csdn.net/rocrocflying/article/details/78333256?locationNum=8&fps=1
和 https://blog.csdn.net/weixin_30512027/article/details/80859934
没有取得作者授权,如有不便,请联系我删除。
很多人或系统会关闭消息通知权限来组织手机天天就知道“叮咚叮咚”地响,但是开发者也没有办法,牛逼的大佬都是大不了自己写一个,像我这样菜,只能恳求用户打开通知权限了。
首先要判断当前App的通知是否已经打开了:
NotificationManagerCompat notification = NotificationManagerCompat.from(this);
boolean isEnabled = notification.areNotificationsEnabled();
最后返回一个boolean值,true表示权限已经打开,false未打开。接下来就是,当未打开权限的情况下,怎么跳转到设置界面引导用户打开通知:
if (!isEnabled) {
//未打开通知
AlertDialog alertDialog = new AlertDialog.Builder(this)
.setTitle("提示")
.setMessage("请在“通知”中打开通知权限")
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
})
.setPositiveButton("去设置", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
Intent intent = new Intent();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
intent.putExtra("android.provider.extra.APP_PACKAGE", LoginActivity.this.getPackageName());
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { //5.0
intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");
intent.putExtra("app_package", LoginActivity.this.getPackageName());
intent.putExtra("app_uid", LoginActivity.this.getApplicationInfo().uid);
startActivity(intent);
} else if (Build.VERSION.SDK_INT == Build.VERSION_CODES.KITKAT) { //4.4
intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.setData(Uri.parse("package:" + LoginActivity.this.getPackageName()));
} else if (Build.VERSION.SDK_INT >= 15) {
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS");
intent.setData(Uri.fromParts("package", LoginActivity.this.getPackageName(), null));
}
startActivity(intent);
}
})
.create();
alertDialog.show();
alertDialog.getButton(DialogInterface.BUTTON_NEGATIVE).setTextColor(Color.BLACK);
alertDialog.getButton(AlertDialog.BUTTON_POSITIVE).setTextColor(Color.BLACK);
}
这样就可以跳转到设置界面了。
android 通知权限设置在哪,Android 打开消息通知权限相关推荐
- android 修改应用权限设置在哪里,Android在应用设置里关闭权限,返回生命周期处理...
问题 在处理6.0运行时权限时,很多人都忽略了这样一个问题: 在一个App应用里,如果已经允许了一个权限比如(读取通讯权限),此刻去调用相机,弹出权限申请对话框,此刻点击拒绝,然后经过处理后弹出去设置 ...
- Android开发短信拦截与读取,消息通知Notification
截获系统广播,读取消息,若联系人存在于通信录中,则让消息继续传播:若属于陌生号码,则中断消息,同时把信息显示在自己的程序中. 拦截器代码如下: public class SMSInterceptRec ...
- android 圆形图片设置蒙层,Android引导蒙层,安卓新手引导图,引导图层,支持椭圆,圆形,矩形多种形状,一行代码快速搞定-Go语言中文社区...
新手引导视图,初次打开页面时显示. 支持圆形,椭圆,矩形等多种图形 提示部分支持图片和文字提示 先看效果图 使用步骤. 使用起来特别简单,只需要把GuideView这个类复制到你的项目中就可以了 pa ...
- Android之ScrollView设置了高度(android:layout_height=“match_parent“)但里面的组件不能充满问题
1 问题 写了ScrollView控件,设置了高度(android:layout_height="match_parent"),但是里面的组件不能填充它,感觉就像ScrollVie ...
- android手机可以设置屏幕锁定,Android手机屏幕锁定设置方法(九个点图案)
这是三星S5368手机屏幕锁的示例 随着三星S5368手机系统的功能越来越完善,性能越来越强. 越来越多的三星S5368用户喜欢在三星S5368手机中添加一些重要信息甚至是隐私,但是这种方式可能会被其 ...
- win7访问不了服务器共享文件夹权限设置,win7系统开启共享文件夹访问权限的操作方法...
很多小伙伴都遇到过对win7系统开启共享文件夹访问权限进行设置的困惑吧,一些朋友看过网上对win7系统开启共享文件夹访问权限设置的零散处理方法,并没有完完全全明白win7系统开启共享文件夹访问权限是如 ...
- 查看linux mysql 账户权限设置_Linux下mysql新建账号及权限设置各种方式总结
来自:http://justcoding.iteye.com/blog/1941116 1.权限赋予 说明:mysql部署在服务器A上,内网上主机B通过客户端工具连接服务器A以进行数据库操作,需要服务 ...
- mysql权限设置dede_dede5.7织梦cms目录权限安全配置教程 win服务器iis
dede5.7织梦cms目录权限安全配置教程 win服务器iis 官方的DEDE安全设置教程,设置好后还是有问题,比如,验证码错误了,因为DATA没有写入权限,还有文件没法生成了,也是因为生成目录没有 ...
- android手机usb设置在哪里,Android手机USB调试在哪?安卓手机如何打开USB调试模式?...
如果我们要将安卓手机连接到电脑上,从而传输文件.下载应用或ROOT等,都需要打开手机的USB调试模式.安卓系统的版本有很多,它们的打开方法也各不相同,下面给大家介绍各版本安卓手机打开USB调试模式的方 ...
最新文章
- mysql在线教程嵌套_MySQL update嵌套
- Java日志框架-Logback手册中文版以及官方配置文档教程
- python经典案例-Python递归的经典案例
- 《产品之光》作者Kevin:对于小程序我有话要说
- C4C Product Price List的模型中和有效期相关的两个字段
- sed: -e expression #1, char 23: unknown option to `s'
- php 检测密码,php 判断密码是否简单
- vc mysql free result_VC的MySQL编程
- 虚拟机安装centos7后无法联网
- Restlet学习资源
- 软件测试的目的是什么?
- 100条修身养性的句子
- minio-operator部署minio服务,并用Java客户端访问minio
- ubantu下部署python
- matlab无法打开wps的xls文件,WPS无法打开XLS文件怎么办 XLS文件出现异常无法打开怎么处理...
- uva 1449 Dominating Patterns(AC自动机基本应用)
- Linux-Qt--2--调试运行终止弹窗问题-The inferior stopped because it received a signal from the Operating System
- 当我们谈深度学习时,我们用它落地了什么?阿里云内容安全功能全新升级
- Web服务器群集——编译安装Apache构建虚拟主机
- 封装class,让className可以在IE8及其以下版本的浏览器中使用
热门文章
- 机器学习入门基础(一)
- rtmp一些状态信息详解-as连接FMS服务器报错状态汇总~~
- python语言arrows用法_python时区运算,时区,时间戳,夏令时讲解
- 管人就是管情绪——从《纸牌屋》中的心理操控说起
- Android Studio与Bmob关联
- CMDN Club #19: Windows 8 Dev BootCamp - Win8开发知识与产品实践
- 范数(简单的理解)、范数的用途、什么是范数
- 将JAVA bean/实体类 中为null的属性值转换成空字符串
- 有哪些实用的图片去水印的方法?这三个方法让你实现去图片水印
- java 文字串叠字检查_逆天叠字又来了!这次是五叠!六叠!八叠字!字字突破你的想象!...