Android 未在片段中调用onRequestPermissionsResult

Android 未在片段中调用onRequestPermissionsResult,android,android-studio,android-permissions,Android,Android Studio,Android Permissions,在我调用requestPermissions的对话框片段中,我尝试了那些代码getActivity().requestPermissions(新字符串[]{Manifest.permission.READ_EXTERNAL_STORAGE},12) 或 我使用这个代码来得到结果 @Override public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults

在我调用requestPermissions的对话框片段中,我尝试了那些代码
getActivity().requestPermissions(新字符串[]{Manifest.permission.READ_EXTERNAL_STORAGE},12)

我使用这个代码来得到结果

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

如果我把它放在我的
HoneActivity
中,它可以正常工作,但我需要在片段中调用
onRequestPermissionsResult
。如果我把代码放在我调用的
requestPermissions
片段中,它就不再工作了。我还尝试了s
super.onRequestPermissionsResult
,但没有成功。在其他主题中,我看到了一个bug,但我检查了我的版本,我使用的是
com.android.support:appcompat-v7:24.0.0
当您在片段中调用它时

getActivity().requestPermissions(new String[{Manifest.permission.READ_EXTERNAL_STORAGE},12);
然后

在您正在添加片段的活动中被调用

因此,请在片段中选择
requestPermissions()
,并在父活动中选中
onRequestPermissionsResult()
,您将在其中添加片段


原因是requestPermissions需要一个活动作为aurgument检查完整详细信息。

但是如果我直接调用requestPermissions(),而不调用getActivity()。比我在片段中应该得到onRequestPermissionsResult()调用要多,对吗?这对我不起作用
getActivity().requestPermissions(new String[{Manifest.permission.READ_EXTERNAL_STORAGE},12);
 @Override
 public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
   Log.i("permission", "Request Code: "+ requestCode);
 }