java android studio 安卓开发 - 动态申请权限

昨天看视频,一个拨号app。intent用的ACTION_CALL 
视频演示挺正常,但是我这一点击就闪退。
网上查了半天,从系统和api版本,到配置文件都不行。
今天用ACTION_DIAL能正常切换到拨号页面,但CALL还是闪退。
在网上搜,原来是安卓6以后需要动态申请权限。

昨天解决问题没有方向,都是瞎碰。
以后出现bug时,用相近的方法,比如ACTION_CALL不行用ACTION_DIAL试试。

动态权限申请
1 字符串数组 添加权限
    String[] permissions = new String[]{
    Manifest.permission.CALL_PHONE,
    Manifest.permission.SEND_SMS,
    Manifest.permission.CAMERA,
    Manifest.permission.RECORD_AUDIO,
    Manifest.permission.READ_EXTERNAL_STORAGE,
    Manifest.permission.RECORD_AUDIO
    };
2 检测是否授予权限
   if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.RECORD_AUDIO) !=
      PackageManager.PERMISSION_GRANTED)

   PackageManager.PERMISSION_GRANTED 是系统值 = 0,不等于0就是没有授予。

3 申请权限
   ActivityCompat.requestPermissions(MainActivity.this, permissions ,1);
   permissions这个是字符串数组,见1。
 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值