android - 每次使用不同的请求代码调用 onRequestPermissionsResult

标签 android android-studio android-permissions

我使用此代码在 fragment 中请求许可

requestPermissions(new String[]{android.Manifest.permission.READ_EXTERNAL_STORAGE},14);

在我的HomeActivity中,我使用此代码来获取结果

@Override
    public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
        Log.i("permission", "Request Code: "+ requestCode);}

例如,如果我将代码设置为 14,我会在 onRequestPermissionsResult 上得到请求代码 65550。如果我拒绝权限请求并再次请求它,我会得到不同的请求代码。这是使用相同 requestPermissions 和代码 14

调用 5 onRequestPermissionsResult 的输出
Request Code: 65550
Request Code: 131086
Request Code: 196622
Request Code: 262158
Request Code: 327694

最佳答案

您的 Activity 不知道哪个 fragment 正在调用 startActivityForResult

如果您调用startActivityForResult(intent, 1)从 fragment 中,您需要将其替换为 getActivity().startActivityForResult(intent, 1)

它很可能会解决您的问题

希望有帮助。

关于android - 每次使用不同的请求代码调用 onRequestPermissionsResult,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39747360/

相关文章:

android - 无法解决 : com. github.barteksc :android-pdf-viewer:3. 2.0-beta.1 如何解决此问题

android - 如何使 listview 像 android market 一样。即分为两列

android - Intent 在 NavigationDrawerFragment 中不起作用

java - 如何隐藏 ListView,直到在 SearchView 中输入字符串

android-studio - Android Studio - 如何找到哪个库正在使用危险权限?

android - "This Feature is not available on this device"请求 DND 权限时出现此错误

java - 在应用程序上使用 Intent 共享图像时出现错误共享失败

android - 如何在库模块中添加 .aar 依赖项?

java.lang.UnsatisfiedLinkError - android studio gradle 中的 NDK?

android - Intent Intent.ACTION_CALL :android. permission.CALL_PHONE 需要缺少权限