在任何情况下onRequestPermissionResult的grantList为空

时间:2019-06-17 11:24:49

标签: android android-permissions

我正在寻求许可。我得到grantResults array size =0的建议,如果有人遇到这种情况,那怎么办?

onRequestPermissionsResult(requestCode: Int, permissions: Array<out String>, grantResults: IntArray)

1 个答案:

答案 0 :(得分:0)

我知道这是迟到的回复,但如果它对遇到此问题的任何人(如我)有帮助。

在调用 requestPermissions 中,第一个参数是数组,该数组又返回给 onRequestPermissionResult()。 如果这是空的,则回调 grantResults 为空:

        if(ContextCompat.checkSelfPermission(view.context,
                    Manifest.permission.WRITE_EXTERNAL_STORAGE) !=
        PackageManager.PERMISSION_GRANTED        ) {
             requestPermissions(arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE),
                requestCode)
    }

此代码需要清单中的以下内容:

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

如果未找到,则正在创建并传递给函数的数组为空,从而使 grantResults 为空。

希望这不是一个令人困惑的解释并帮助其他人