Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android M上测试ActivityCompat.requestPermission?_Android - Fatal编程技术网

如何在android M上测试ActivityCompat.requestPermission?

如何在android M上测试ActivityCompat.requestPermission?,android,Android,这是我的java代码 public static void checkSinglePermissionCompat(final Activity activity, ActionNeedsPermission action, final String permission, final int permissi

这是我的java代码

public static void checkSinglePermissionCompat(final Activity activity,
                                               ActionNeedsPermission action, final String permission,
                                               final int permissionCode, String message) {
    int hasPermission = ActivityCompat.checkSelfPermission(activity, permission);
    if (hasPermission == PackageManager.PERMISSION_GRANTED) {
        action.performAction();
    } else {
        if (!ActivityCompat.shouldShowRequestPermissionRationale(activity, permission)) {
            showRationaleDialog(activity, message,
                    new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog,
                                            int which) {
                            ActivityCompat.requestPermissions(activity, new String[]{permission}, permissionCode);
                        }
                    });
        } else {
            ActivityCompat.requestPermissions(activity, new String[]{permission}, permissionCode);
        }
    }
}
我的gradle文件

android {
compileSdkVersion "android-MNC"
buildToolsVersion "23.0.1"

defaultConfig {
    minSdkVersion "MNC"
    targetSdkVersion "MNC"
}
}
还有我的清单文件

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

<uses-permission-sdk-m android:name="android.permission.RECORD_AUDIO" />
<uses-permission-sdk-m android:name="android.permission.SEND_SMS" />

它只是回调权限被拒绝,没有显示系统权限请求对话框。有人能帮我吗?thx参考此样本


****
**
**
请参考此示例


****
**
**
 <!-- Note that all required permissions are declared here in the Android manifest.
 On Android M and above, use of these permissions is only requested at run time. -->
**<uses-permission android:name="android.permission.CAMERA"/>**

<!-- The following permissions are only requested if the device is on M or above.
 On older platforms these permissions are not requested and will not be available. -->
**<uses-permission-sdk-m android:name="android.permission.READ_CONTACTS" />
<uses-permission-sdk-m android:name="android.permission.WRITE_CONTACTS" />**