1. 程式人生 > >android-許可權

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();