6.0权限"带不再提示"的弹窗

山鹰1985 2016-04-25 02:40:52
请问下各位大牛,6.0中的那个权限申请弹窗中,带有"不再提示"的是自定义的还是系统有自带的?如果是系统自带的,请告知如何调用.



...全文
727 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
山鹰1985 2016-04-26
  • 打赏
  • 举报
回复
引用 12 楼 jklwan 的回复:
[quote=引用 11 楼 u012137924 的回复:] 请看. 我就是想不通为什么我写的没出现带"不再提示"的 dialog.
代码没什么问题,那就是手机问题。[/quote] 刚买的 三星 机,可能是手机问题. 谢谢.由于上面还有一位回答了我的问题,所以 给你80分吧,别介意哈.
jklwan 2016-04-26
  • 打赏
  • 举报
回复
引用 11 楼 u012137924 的回复:
请看. 我就是想不通为什么我写的没出现带"不再提示"的 dialog.
代码没什么问题,那就是手机问题。
山鹰1985 2016-04-26
  • 打赏
  • 举报
回复
引用 10 楼 jklwan 的回复:
[quote=引用 9 楼 u012137924 的回复:]
你的请求码 1210 没有报超出 整形范围的错吗?
我写的点了拒绝后,下次再弹出来的还是不带"不再提示"的对话框 , 我的SDK是 23.01 如下图:

requestCode是1210怎么会报超出范围的?int最大值是Integer.MAX_VALUE的。另外你的targetSdkVersion是23吗?
[/quote]



请看. 我就是想不通为什么我写的没出现带"不再提示"的 dialog.


//6.0权限申请
private void checkPhonePermissions() {
//使用兼容库就无需判断系统版本
int hasPhonePermissions = ContextCompat.checkSelfPermission(this, Manifest.permission.CALL_PHONE);
if (hasPhonePermissions == PackageManager.PERMISSION_GRANTED) {
CommonUtil.makeCall(detailMdl.getPublisherPhone(), PPVendorDetailInfoActivity.this);
} else {
//需要弹出dialog让用户手动赋予权限
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CALL_PHONE},
CodeBook.Permission.Phone);
}
}

//ActivityCompat.requestPermissions的回调
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
if (requestCode == CodeBook.Permission.Phone) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
//用户同意读取相册信息
MsgUtil.toast("授权成功,再次点击" + "\"" + "电话按钮" + "\"" + "即可拨打电话");
} else {
if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.CALL_PHONE)) {
CustomAlertDialog dialog = new CustomAlertDialog(this, "拨打电话需要赋予访问打电话的权限,不授权将无法正常工作!",
"知道了", "去授权", true);
dialog.setOnClickYesListener(new CustomAlertDialog.OnClickYesListener() {
@Override
public void doConfirm() {
ActivityCompat.requestPermissions(PPVendorDetailInfoActivity.this, new String[]{Manifest
.permission.CALL_PHONE}, CodeBook.Permission.Phone);
}
});
dialog.setCancelable(false);
dialog.show();
}
}
}
}
jklwan 2016-04-26
  • 打赏
  • 举报
回复
引用 9 楼 u012137924 的回复:
你的请求码 1210 没有报超出 整形范围的错吗?
我写的点了拒绝后,下次再弹出来的还是不带"不再提示"的对话框 , 我的SDK是 23.01 如下图:

requestCode是1210怎么会报超出范围的?int最大值是Integer.MAX_VALUE的。另外你的targetSdkVersion是23吗?
山鹰1985 2016-04-26
  • 打赏
  • 举报
回复
引用 8 楼 jklwan 的回复:
[quote=引用 7 楼 u012137924 的回复:]
能给个小Demo吗? 为什么我自己写的,系统没有出现那个带不再提示的Dialog呢?


findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ActivityCompat.requestPermissions(PointActivity.this, new String[]{Manifest.permission.CAMERA}, 1210);
}
});

代码就是请求权限的一句话啊。注意targetSdkVersion和compileSdkVersion要是23才行
[/quote]

你的请求码 1210 没有报超出 整形范围的错吗?
我写的点了拒绝后,下次再弹出来的还是不带"不再提示"的对话框 , 我的SDK是 23.01 如下图:
jklwan 2016-04-26
  • 打赏
  • 举报
回复
引用 7 楼 u012137924 的回复:
能给个小Demo吗? 为什么我自己写的,系统没有出现那个带不再提示的Dialog呢?

findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                ActivityCompat.requestPermissions(PointActivity.this, new String[]{Manifest.permission.CAMERA}, 1210);
            }
        });
代码就是请求权限的一句话啊。注意targetSdkVersion和compileSdkVersion要是23才行
山鹰1985 2016-04-26
  • 打赏
  • 举报
回复
引用 4 楼 qq_26763799 的回复:
自带的,6.0的效果,而且应该是可以设置选中后颜色的,我的N5x手机调试项目中用到了这个checkbox,很漂亮,有点击波纹效果,而且我就是用的原生控件
引用 5 楼 jklwan 的回复:
系统自带的,当你第一次选择的不授权,下一次再请求权限时,这个复选框就会出现了。
能给个小Demo吗? 为什么我自己写的,系统没有出现那个带不再提示的Dialog呢?
ys527663232 2016-04-26
  • 打赏
  • 举报
回复
app不需要自己调用,也根本调不了!,这是android系统的事儿,你在抢系统的饭碗啊
jklwan 2016-04-25
  • 打赏
  • 举报
回复
系统自带的,当你第一次选择的不授权,下一次再请求权限时,这个复选框就会出现了。
qq_26763799 2016-04-25
  • 打赏
  • 举报
回复
自带的,6.0的效果,而且应该是可以设置选中后颜色的,我的N5x手机调试项目中用到了这个checkbox,很漂亮,有点击波纹效果,而且我就是用的原生控件
o蝌蚪o 2016-04-25
  • 打赏
  • 举报
回复
我也想知道...
山鹰1985 2016-04-25
  • 打赏
  • 举报
回复
自己顶一次,别沉啊
山鹰1985 2016-04-25
  • 打赏
  • 举报
回复
在线等大牛.

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧