// Path: rx_paparazzo/src/main/java/com/miguelbcr/ui/rx_paparazzo2/entities/TargetUi.java
// public class TargetUi {
//   private Object ui;
// 
//   public TargetUi(Object ui) {
//     this.ui = ui;
//   }
// 
//   public FragmentActivity activity() {
//     return fragment() != null ? fragment().getActivity() : (FragmentActivity) ui;
//   }
// 
//   @Nullable
//   public Fragment fragment() {
//     if (ui instanceof Fragment) {
//       return (Fragment) ui;
//     }
//     return null;
//   }
// 
//   public Object ui() {
//     return ui;
//   }
// 
//   public void setUi(Object ui) {
//     this.ui = ui;
//   }
// 
//   public Context getContext() {
//     return fragment() == null ? activity() : fragment().getContext();
//   }
// }


import android.Manifest;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.net.Uri;
import android.os.Build;
import com.miguelbcr.ui.rx_paparazzo2.entities.TargetUi;
import java.util.List;
package com.miguelbcr.ui.rx_paparazzo2.interactors;




public class PermissionUtil {

    public static final int READ_WRITE_PERMISSIONS = Intent.FLAG_GRANT_READ_URI_PERMISSION
                    | Intent.FLAG_GRANT_WRITE_URI_PERMISSION;

// Path: rx_paparazzo/src/main/java/com/miguelbcr/ui/rx_paparazzo2/entities/TargetUi.java
// public class TargetUi {
//   private Object ui;
// 
//   public TargetUi(Object ui) {
//     this.ui = ui;
//   }
// 
//   public FragmentActivity activity() {
//     return fragment() != null ? fragment().getActivity() : (FragmentActivity) ui;
//   }
// 
//   @Nullable
//   public Fragment fragment() {
//     if (ui instanceof Fragment) {
//       return (Fragment) ui;
//     }
//     return null;
//   }
// 
//   public Object ui() {
//     return ui;
//   }
// 
//   public void setUi(Object ui) {
//     this.ui = ui;
//   }
// 
//   public Context getContext() {
//     return fragment() == null ? activity() : fragment().getContext();
//   }
// }


// Path: rx_paparazzo/src/main/java/com/miguelbcr/ui/rx_paparazzo2/interactors/PermissionUtil.java
import android.Manifest;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.net.Uri;
import android.os.Build;
import com.miguelbcr.ui.rx_paparazzo2.entities.TargetUi;
import java.util.List;

package com.miguelbcr.ui.rx_paparazzo2.interactors;




public class PermissionUtil {

    public static final int READ_WRITE_PERMISSIONS = Intent.FLAG_GRANT_READ_URI_PERMISSION
                    | Intent.FLAG_GRANT_WRITE_URI_PERMISSION;

    public static Intent requestReadWritePermission(TargetUi targetUi, Intent intent, Uri uri) {