正在查看: 远离手机 v4.9.11 应用的 StartActivityManager.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 远离手机 v4.9.11 应用的 StartActivityManager.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.hjq.permissions;
import android.app.Activity;
import android.app.Fragment;
import android.content.Context;
import android.content.Intent;
import com.lijianqiang12.silent.II1lll1lIlIl1;
import com.lijianqiang12.silent.IlI1111llI11I;
final class StartActivityManager {
private static final String SUB_INTENT_KEY = "sub_intent_key";
private interface IStartActivityDelegate {
void startActivity(@IlI1111llI11I Intent intent);
void startActivityForResult(@IlI1111llI11I Intent intent, int i);
}
private static class StartActivityDelegateActivityImpl implements IStartActivityDelegate {
private final Activity mActivity;
@Override
public void startActivity(@IlI1111llI11I Intent intent) {
this.mActivity.startActivity(intent);
}
@Override
public void startActivityForResult(@IlI1111llI11I Intent intent, int i) {
this.mActivity.startActivityForResult(intent, i);
}
private StartActivityDelegateActivityImpl(@IlI1111llI11I Activity activity) {
this.mActivity = activity;
}
}
private static class StartActivityDelegateContextImpl implements IStartActivityDelegate {
private final Context mContext;
@Override
public void startActivity(@IlI1111llI11I Intent intent) {
this.mContext.startActivity(intent);
}
@Override
public void startActivityForResult(@IlI1111llI11I Intent intent, int i) {
Activity findActivity = PermissionUtils.findActivity(this.mContext);
if (findActivity != null) {
findActivity.startActivityForResult(intent, i);
} else {
startActivity(intent);
}
}
private StartActivityDelegateContextImpl(@IlI1111llI11I Context context) {
this.mContext = context;
}
}
private static class StartActivityDelegateFragmentImpl implements IStartActivityDelegate {
private final Fragment mFragment;
@Override
public void startActivity(@IlI1111llI11I Intent intent) {
this.mFragment.startActivity(intent);
}
@Override
public void startActivityForResult(@IlI1111llI11I Intent intent, int i) {
this.mFragment.startActivityForResult(intent, i);
}
private StartActivityDelegateFragmentImpl(@IlI1111llI11I Fragment fragment) {
this.mFragment = fragment;
}
}
private static class StartActivityDelegateSupportFragmentImpl implements IStartActivityDelegate {
private final androidx.fragment.app.Fragment mFragment;
@Override
public void startActivity(@IlI1111llI11I Intent intent) {
this.mFragment.startActivity(intent);
}
@Override
public void startActivityForResult(@IlI1111llI11I Intent intent, int i) {
this.mFragment.startActivityForResult(intent, i);
}
private StartActivityDelegateSupportFragmentImpl(@IlI1111llI11I androidx.fragment.app.Fragment fragment) {
this.mFragment = fragment;
}
}
StartActivityManager() {
}
static Intent addSubIntentToMainIntent(@II1lll1lIlIl1 Intent intent, @II1lll1lIlIl1 Intent intent2) {
if (intent == null && intent2 != null) {
return intent2;
}
if (intent2 == null) {
return intent;
}
getDeepSubIntent(intent).putExtra(SUB_INTENT_KEY, intent2);
return intent;
}
static Intent getDeepSubIntent(@IlI1111llI11I Intent intent) {
Intent subIntentInMainIntent = getSubIntentInMainIntent(intent);
return subIntentInMainIntent != null ? getDeepSubIntent(subIntentInMainIntent) : intent;
}
static Intent getSubIntentInMainIntent(@IlI1111llI11I Intent intent) {
Object parcelableExtra;
if (!AndroidVersion.isAndroid13()) {
return (Intent) intent.getParcelableExtra(SUB_INTENT_KEY);
}
parcelableExtra = intent.getParcelableExtra(SUB_INTENT_KEY, Intent.class);
return (Intent) parcelableExtra;
}
static boolean startActivity(@IlI1111llI11I Context context, Intent intent) {
return startActivity(new StartActivityDelegateContextImpl(context), intent);
}
static boolean startActivityForResult(@IlI1111llI11I Activity activity, @IlI1111llI11I Intent intent, int i) {
return startActivityForResult(new StartActivityDelegateActivityImpl(activity), intent, i);
}
static boolean startActivity(@IlI1111llI11I Activity activity, Intent intent) {
return startActivity(new StartActivityDelegateActivityImpl(activity), intent);
}
static boolean startActivityForResult(@IlI1111llI11I Fragment fragment, @IlI1111llI11I Intent intent, int i) {
return startActivityForResult(new StartActivityDelegateFragmentImpl(fragment), intent, i);
}
static boolean startActivity(@IlI1111llI11I Fragment fragment, Intent intent) {
return startActivity(new StartActivityDelegateFragmentImpl(fragment), intent);
}
static boolean startActivityForResult(@IlI1111llI11I androidx.fragment.app.Fragment fragment, @IlI1111llI11I Intent intent, int i) {
return startActivityForResult(new StartActivityDelegateSupportFragmentImpl(fragment), intent, i);
}
static boolean startActivity(@IlI1111llI11I androidx.fragment.app.Fragment fragment, Intent intent) {
return startActivity(new StartActivityDelegateSupportFragmentImpl(fragment), intent);
}
static boolean startActivityForResult(@IlI1111llI11I IStartActivityDelegate iStartActivityDelegate, @IlI1111llI11I Intent intent, int i) {
try {
iStartActivityDelegate.startActivityForResult(intent, i);
return true;
} catch (Exception e) {
e.printStackTrace();
Intent subIntentInMainIntent = getSubIntentInMainIntent(intent);
if (subIntentInMainIntent == null) {
return false;
}
return startActivityForResult(iStartActivityDelegate, subIntentInMainIntent, i);
}
}
static boolean startActivity(@IlI1111llI11I IStartActivityDelegate iStartActivityDelegate, @IlI1111llI11I Intent intent) {
try {
iStartActivityDelegate.startActivity(intent);
return true;
} catch (Exception e) {
e.printStackTrace();
Intent subIntentInMainIntent = getSubIntentInMainIntent(intent);
if (subIntentInMainIntent == null) {
return false;
}
return startActivity(iStartActivityDelegate, subIntentInMainIntent);
}
}
}