对低设备使用 android 6.0 api 23 权限(几乎像 api 22)
use android 6.0 api 23 permissions to low devices(like api 22 almost)
这是我的第一个问题,也许我会解释得有点糟糕,但没关系:
我有一个使用 api 22 库的项目,但使用 android 6.0(api 23) 编译,我想继续使用 api 22 库,但是当我 运行 我的项目使用 android 6.0 设备我有权限问题...
我的问题:有没有一种方法可以让您在 Android 5.1.1 中工作,并使用必要权限的方法使用 Android 6.0 进行编译?我的意思是,我可以添加一些库,以使用像 onRequestPermissionsResult(...)
这样的回调吗?我尝试将 api 23 库添加到我的项目中,但他的方法不起作用,任何建议...??
1。在 this page.
检查您需要的权限是否为危险权限
2.‖在String
数组中列出所有你需要的危险权限,如下所示。
private static final String[] REQUIRED_PERMISSIONS = new String[]{your_permissions_here};
3。将以下代码添加到您的 onCreate()。
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
LinkedList<String> missingPermissions = new LinkedList<>();
for(String p : REQUIRED_PERMISSIONS){
if(checkSelfPermission(p) != PackageManager.PERMISSION_GRANTED){
missingPermissions.add(p);
}
}
if(!missingPermissions.isEmpty()){
String[] mpArray = new String[missingPermissions.size()];
missingPermissions.toArray(mpArray);
requestPermissions(mpArray, REQUEST_PERMISSIONS);
}
}
REQUEST_PERMISSIONS
是一个常量整数来标识这个请求。
这是我的第一个问题,也许我会解释得有点糟糕,但没关系: 我有一个使用 api 22 库的项目,但使用 android 6.0(api 23) 编译,我想继续使用 api 22 库,但是当我 运行 我的项目使用 android 6.0 设备我有权限问题...
我的问题:有没有一种方法可以让您在 Android 5.1.1 中工作,并使用必要权限的方法使用 Android 6.0 进行编译?我的意思是,我可以添加一些库,以使用像 onRequestPermissionsResult(...)
这样的回调吗?我尝试将 api 23 库添加到我的项目中,但他的方法不起作用,任何建议...??
1。在 this page.
检查您需要的权限是否为危险权限
2.‖在String
数组中列出所有你需要的危险权限,如下所示。
private static final String[] REQUIRED_PERMISSIONS = new String[]{your_permissions_here};
3。将以下代码添加到您的 onCreate()。
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
LinkedList<String> missingPermissions = new LinkedList<>();
for(String p : REQUIRED_PERMISSIONS){
if(checkSelfPermission(p) != PackageManager.PERMISSION_GRANTED){
missingPermissions.add(p);
}
}
if(!missingPermissions.isEmpty()){
String[] mpArray = new String[missingPermissions.size()];
missingPermissions.toArray(mpArray);
requestPermissions(mpArray, REQUEST_PERMISSIONS);
}
}
REQUEST_PERMISSIONS
是一个常量整数来标识这个请求。