Initial commit
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
package com.yanzhenjie.permission.runtime.setting;
|
||||
|
||||
import com.yanzhenjie.permission.PermissionActivity;
|
||||
import com.yanzhenjie.permission.Setting;
|
||||
import com.yanzhenjie.permission.source.Source;
|
||||
import com.yanzhenjie.permission.util.MainExecutor;
|
||||
|
||||
/* loaded from: classes2.dex */
|
||||
public class RuntimeSetting implements Setting, PermissionActivity.RequestListener {
|
||||
private static final MainExecutor c = new MainExecutor();
|
||||
private Source a;
|
||||
private Setting.Action b;
|
||||
|
||||
public RuntimeSetting(Source source) {
|
||||
this.a = source;
|
||||
}
|
||||
|
||||
@Override // com.yanzhenjie.permission.Setting
|
||||
public void start() {
|
||||
PermissionActivity.a(this.a.a(), this);
|
||||
}
|
||||
|
||||
@Override // com.yanzhenjie.permission.Setting
|
||||
public Setting a(Setting.Action action) {
|
||||
this.b = action;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override // com.yanzhenjie.permission.PermissionActivity.RequestListener
|
||||
public void a() {
|
||||
c.a(new Runnable() { // from class: com.yanzhenjie.permission.runtime.setting.RuntimeSetting.1
|
||||
@Override // java.lang.Runnable
|
||||
public void run() {
|
||||
if (RuntimeSetting.this.b != null) {
|
||||
RuntimeSetting.this.b.a();
|
||||
}
|
||||
}
|
||||
}, 100L);
|
||||
}
|
||||
}
|
@@ -0,0 +1,80 @@
|
||||
package com.yanzhenjie.permission.runtime.setting;
|
||||
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
import android.os.Build;
|
||||
import com.ubt.jimu.base.entities.Constant;
|
||||
import com.yanzhenjie.permission.source.Source;
|
||||
|
||||
/* loaded from: classes2.dex */
|
||||
public class RuntimeSettingPage {
|
||||
private static final String b = Build.MANUFACTURER.toLowerCase();
|
||||
private Source a;
|
||||
|
||||
public RuntimeSettingPage(Source source) {
|
||||
this.a = source;
|
||||
}
|
||||
|
||||
private static Intent b(Context context) {
|
||||
if (Build.VERSION.SDK_INT >= 23) {
|
||||
return a(context);
|
||||
}
|
||||
Intent intent = new Intent();
|
||||
intent.setComponent(new ComponentName("com.huawei.systemmanager", "com.huawei.permissionmanager.ui.MainActivity"));
|
||||
return intent;
|
||||
}
|
||||
|
||||
private static Intent c(Context context) {
|
||||
if (Build.VERSION.SDK_INT >= 24) {
|
||||
return a(context);
|
||||
}
|
||||
Intent intent = new Intent("com.meizu.safe.security.SHOW_APPSEC");
|
||||
intent.putExtra(Constant.SelectRobot.PACKAGE_NAME_KEY, context.getPackageName());
|
||||
intent.setComponent(new ComponentName("com.meizu.safe", "com.meizu.safe.security.AppSecActivity"));
|
||||
return intent;
|
||||
}
|
||||
|
||||
private static Intent d(Context context) {
|
||||
Intent intent = new Intent();
|
||||
intent.putExtra(Constant.SelectRobot.PACKAGE_NAME_KEY, context.getPackageName());
|
||||
intent.setComponent(new ComponentName("com.color.safecenter", "com.color.safecenter.permission.PermissionManagerActivity"));
|
||||
return intent;
|
||||
}
|
||||
|
||||
private static Intent e(Context context) {
|
||||
Intent intent = new Intent();
|
||||
intent.putExtra("packagename", context.getPackageName());
|
||||
intent.setComponent(new ComponentName("com.vivo.permissionmanager", "com.vivo.permissionmanager.activity.SoftPermissionDetailActivity"));
|
||||
if (a(context, intent)) {
|
||||
return intent;
|
||||
}
|
||||
intent.setComponent(new ComponentName("com.iqoo.secure", "com.iqoo.secure.safeguard.SoftPermissionDetailActivity"));
|
||||
return intent;
|
||||
}
|
||||
|
||||
private static Intent f(Context context) {
|
||||
Intent intent = new Intent("miui.intent.action.APP_PERM_EDITOR");
|
||||
intent.putExtra("extra_pkgname", context.getPackageName());
|
||||
return intent;
|
||||
}
|
||||
|
||||
public void a(int i) {
|
||||
try {
|
||||
this.a.a(b.contains("huawei") ? b(this.a.a()) : b.contains("xiaomi") ? f(this.a.a()) : b.contains("oppo") ? d(this.a.a()) : b.contains("vivo") ? e(this.a.a()) : b.contains("meizu") ? c(this.a.a()) : a(this.a.a()), i);
|
||||
} catch (Exception unused) {
|
||||
this.a.a(a(this.a.a()), i);
|
||||
}
|
||||
}
|
||||
|
||||
private static Intent a(Context context) {
|
||||
Intent intent = new Intent("android.settings.APPLICATION_DETAILS_SETTINGS");
|
||||
intent.setData(Uri.fromParts("package", context.getPackageName(), null));
|
||||
return intent;
|
||||
}
|
||||
|
||||
private static boolean a(Context context, Intent intent) {
|
||||
return context.getPackageManager().queryIntentActivities(intent, 65536).size() > 0;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user