android 国产手机6.0适配(小米)

个人觉得关于国产机权限方面的事情,按照正常流程走,代码完全行得通。就像很多博客写的一样,拒绝了怎么办接收了怎么办。但是关于shouldShowRequestPermissionRationale这个方法有的手机得不到正确的值,所以还是不要用好了,用了也没效果。下面是小米6.0的测试结果:

一。小米M4,6.01
1.在安全中心设置成允许:永远返回0,即允许权限,可以读取联系人
2.在安全中心设置成拒绝:第一次-1,然后永远0,不能读取联系人
3.设置成询问模式:第一次-1,然后弹出小米的对话框,选择拒绝,然后永远返回0且不能读取
4.设置成询问模式:第一次-1,然后弹出小米对话框,选择允许,然后永远返回0,且能读取联系人
5.不设置申请权限,直接崩溃


结论:1.小米6.0系统拥有双重权限系统,miui拥有最高权限,android拥有第二权限,猜测,保留android权限系统,是为了通过google中的某些设定
      2.(1)当在miui设置成允许时:android自动允许权限,即checkSelfPermission返回0.
   (2)当在miui设置成拒绝时:此时,checkSelfPermission,返回-1,需要开发者手动申请权限,miui会默认申请成功,并不会弹出android系统的权限申请框,
   (3)设置成询问时:checkSelfPermission,返回-1,需要开发者手动申请权限,miui会默认申请成功,并不会弹出android系统的权限申请框,
    不论用户选择允许还是拒绝,checkSelfPermission都会返回0,此时根据用户的选择miui决定是否授予权限
 3.心得:手动申请权限实际上是为了糊弄android系统,但是开发者必须的这样做,正常来说代码逻辑如下是可以正常运行的:


关于小米6.0:按照google官方正常逻辑来跑,是可以的,运行效果和小米6.0以下的系统是一样的。shouldShowRequestPermissionRationale这个方法是没有效果的。

其它国产机有的按照google的那一套,有的是自己的权限管理系统。这个也没关系,反正能运行就好了。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值