更新后,允许button不起作用

在已安装Android Marshmallow最新更新的设备上 – 即2016年6月更新,当我要求权限时,ALLOWbutton不起作用。

我已经testing了这两个设备:

Nexus 6p(Andoid版本 – 6.0.1,内部版本号 – MTC19V)

Nexus 7(Android版本6.0.1,内部版本号 – MOB30M)

两者都有最新的更新,当我请求权限,对话框显示,但我不能够按下ALLOWbutton。

这里是我用来请求权限的代码:

public void showPermissionsDialog() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { int hasWriteExternalStoragePermission = activity.checkSelfPermission(android.Manifest.permission.WRITE_EXTERNAL_STORAGE); int hasWriteGetAccountsPermission = activity.checkSelfPermission(android.Manifest.permission.GET_ACCOUNTS); if (hasWriteExternalStoragePermission != PackageManager.PERMISSION_GRANTED || hasWriteGetAccountsPermission != PackageManager.PERMISSION_GRANTED) { activity.requestPermissions(new String[]{android.Manifest.permission.WRITE_EXTERNAL_STORAGE, android.Manifest.permission.GET_ACCOUNTS}, MainActivity.REQUEST_CODE_ASK_PERMISSIONS); } else { isAllPermissionsGranted = true; } } else { isAllPermissionsGranted = true; } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { if (requestCode == REQUEST_CODE_ASK_PERMISSIONS) { if (grantResults.length > 0) { boolean isAllPermissionsGranted = true; for (int i = 0; i < grantResults.length; i++) { if (grantResults[i] != PackageManager.PERMISSION_GRANTED) { isAllPermissionsGranted = false; } } if (isAllPermissionsGranted) { this.isAllPermissionsGranted = true; } else { android.widget.Toast.makeText(this, "Please, grand permissions", android.widget.Toast.LENGTH_LONG).show(); showPermissionsDialog(); } } } } 

对于如何解决这个问题,有任何的build议吗? 提前致谢!

编辑

这是给谷歌的错误报告。 我们仍在等待Google的解决scheme。

编辑1

这个问题已被解决!

编辑:它已被标记为最后一个Android的缺陷,它将在未来的操作系统版本中修复。 错误报告

编辑2:文件pipe理器给我发电子邮件,他们修复这个function在他们的应用程序。 我没有再尝试文件pipe理器,但如果你更新的应用程序不应该给你这个问题了。 但基本上这种行为,可能是从任何应用程序覆盖错误的方式,直到android修复它。

我终于明白了(至less在我的情况下)…它的文件pipe理器应用程序的服务。 如果其服务停止,权限再次工作。

https://play.google.com/store/apps/details?id=com.rhmsoft.fm

我有这个应用程序之前,更新到“MOB30M”和运行时权限的工作没有问题(是我的日常工作来编程),我一直在使用文件pipe理器放在手机里的释放APK并运行它来安装APK。 那么今天我安装的不是一些应用程序。

我的资金可怕的是,一个应用程序可以使所有的权限系统崩溃。

这是和过分的问题

我知道权限系统没有崩溃,因为一个应用程序可以用来伪造对话框,但不应该那么Android(谷歌)告诉你,你有一个应用程序在顶部运行,如果你想给应用程序的权限,你应该卸载XXXX应用程序? 我的意思是为了用户体验。

一个普通的用户,会认为他的手机坏了,可能会把手机发回谷歌或运营商xD

来吧,说实话,不能让android更好? 是不是像你需要你的电话扎根有这种行为(我的手机没有扎根)。 如果你不通知用户发生了什么事情,那么就像是坏了

在我的情况下, 清洁大师的iSwipe导致了这个问题,在他们的设置禁用ISWIPEfunction

它的android棉花糖6.0.1的问题。 根据Google的支持,他们正在处理这个问题https://code.google.com/p/android/issues/detail?id=213120

我正要报告同样的问题,但在这里它已经注册,我面对这个2个月以来,不知道为什么,但'允许'button不能在我的NEXUS 6P手机也工作。 看来这个问题只在nexus系列中运行

@Google和Android团队:请解决这个问题,它真的很烦人,我们面对这个问题的次数,我意味着每个应用程序,需要继续设置手动设置权限的解决方法。

它真的是一个愚蠢的错误:/

卸载文件pipe理器并再次下载,“允许”button突然再次工作。