Initial commit
This commit is contained in:
54
sources/com/yanzhenjie/permission/source/ContextSource.java
Normal file
54
sources/com/yanzhenjie/permission/source/ContextSource.java
Normal file
@@ -0,0 +1,54 @@
|
||||
package com.yanzhenjie.permission.source;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.os.Build;
|
||||
import java.lang.reflect.Method;
|
||||
|
||||
/* loaded from: classes2.dex */
|
||||
public class ContextSource extends Source {
|
||||
private Context a;
|
||||
|
||||
public ContextSource(Context context) {
|
||||
this.a = context;
|
||||
}
|
||||
|
||||
@Override // com.yanzhenjie.permission.source.Source
|
||||
public Context a() {
|
||||
return this.a;
|
||||
}
|
||||
|
||||
@Override // com.yanzhenjie.permission.source.Source
|
||||
public void a(Intent intent, int i) {
|
||||
Context context = this.a;
|
||||
if (context instanceof Activity) {
|
||||
((Activity) context).startActivityForResult(intent, i);
|
||||
} else {
|
||||
intent.addFlags(268435456);
|
||||
this.a.startActivity(intent);
|
||||
}
|
||||
}
|
||||
|
||||
@Override // com.yanzhenjie.permission.source.Source
|
||||
public boolean a(String str) {
|
||||
if (Build.VERSION.SDK_INT < 23) {
|
||||
return false;
|
||||
}
|
||||
Context context = this.a;
|
||||
if (context instanceof Activity) {
|
||||
return ((Activity) context).shouldShowRequestPermissionRationale(str);
|
||||
}
|
||||
PackageManager packageManager = context.getPackageManager();
|
||||
try {
|
||||
Method method = packageManager.getClass().getMethod("shouldShowRequestPermissionRationale", String.class);
|
||||
if (!method.isAccessible()) {
|
||||
method.setAccessible(true);
|
||||
}
|
||||
return ((Boolean) method.invoke(packageManager, str)).booleanValue();
|
||||
} catch (Exception unused) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
13
sources/com/yanzhenjie/permission/source/Source.java
Normal file
13
sources/com/yanzhenjie/permission/source/Source.java
Normal file
@@ -0,0 +1,13 @@
|
||||
package com.yanzhenjie.permission.source;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
|
||||
/* loaded from: classes2.dex */
|
||||
public abstract class Source {
|
||||
public abstract Context a();
|
||||
|
||||
public abstract void a(Intent intent, int i);
|
||||
|
||||
public abstract boolean a(String str);
|
||||
}
|
Reference in New Issue
Block a user