自2018年11月开始,GooglePlay以及国内大部分应用市场要求APP编译目标SDK必须为26及以上,否则不予提交审核。
设置targetSdkVersion:https://community.apicloud.com/bbs/thread-110959-1-1.html
查看apk的targetSdkVersion版本不懂的可以看下面一篇文章:https://blog.csdn.net/ln_polaris/article/details/90481801
在Android上使用动态权限,要求APP编译的目标SDK(即targetSdkVersion)为23及以上(对应为android6.0及以上系统),22及以下系统会执行缺省处理(手机厂商也可能定制处理),APICloud为满足更普遍的开发需求,默认配置targetSdkVersion为22,即权限走系统缺省处理。
注意:安装自定义apploader的时候注意用升级环境编译,把之前安装的应用删除掉
APP的targetSdkVersion为22(安卓5.1)
如果你的应用targetSdkVersion为22,那你的应用只适配最高安卓5.1的手机,更高版本的手机新功能将会隐藏。4
情况1:在安卓5.1及以下手机手机运行
低配置的手机权限有三个选项:允许/提示/禁止 ,默认是提示。当你想使用权限功能的时候,app会自动弹出一个提示框询问你是否开启该权限。
情况2:在安卓6.0及以上版本的手机运行
因为你的targetSdkVersion是22,所以高版本手机直接就给你的权限全部打开
APP的targetSdkVersion为23(安卓6.0)
情况1:在安卓5.1及以下的手机运行
没有差别,低配置手机在请求新的权限的时候还是会自动弹出询问窗口,不需要我们做任何操作
情况2:在安卓6.0及以上版本的手机运行
//这边以摄像头权限为例,先判断app是否开启该权限了
var resultList = api.hasPermission({
list:['camera']
});
if(!resultList){
api.requestPermission({
list:['camera'],
}, function(ret, err){
if (ret.list[0].granted) {
//开启权限
此处调用摄像头代码
}else{
toast_msg('请开启摄像头权限');
}
});
}else {
//如果已经开启权限,直接调用摄像头
}
注意:自定义loader,需要开通储存权限才能加载代码,不然会白屏。存储选项是必须用到的,可以在启动app的时候开启该权限,如果用户禁止开通,则app关闭