android-权限

 zhuangzhenjie permission usage

  •  Android 6.0 或更高版本运行时权限.
  •  Android 7.0 或更高版本获取私有文件权限.
  • Android 8.0 或更高版本获取安装未知来源安装包权限.
    android.permission.REQUEST_INSTALL_PACKAGES
  • Android 6.0 或更高版本悬浮窗权限.
    android.permission.SYSTEM_ALERT_WINDOW.
  1. 依赖包
    implementation 'com.yanzhenjie:permission:2.0.0-rc12'
  2. 混淆规则
    -dontwarn com.yanzhenjie.permission.**
                                   
  3.  申请权限
    1 运行时权限
    
    AndPermission.with(this)
      .runtime()
      .permission(Permission.Group.STORAGE)
      .onGranted(permissions -> {
        // 权限允许.
      })
      .onDenied(permissions -> {
        // 权限拒绝.
      })
      .start();
    
    
    2 获取私有文件uri
    
    File file = ...;
    Uri compatUri = AndPermission.getFileUri(this, file);
    
    
    3 未知来源安装包权限
    
    File apkFile = ...;
    AndPermission.with(this)
      .install()
      .file(apkFile)
      .onGranted(file -> {
        // 权限允许.
      })
      .onDenied(file -> {
        // 权限拒绝.
      })
      .start();
    
    
    4 悬浮窗权限
    
    AndPermission.with(this)
      .overlay()
      .onGranted(data -> {
        // 权限允许.
      })
      .onDenied(data -> {
        // 权限拒绝.
      })
      .start();
    
    

     

 

你可能感兴趣的:(android)