正在查看: CityMall v1.42.1 应用的 ProcessPhoenix.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: CityMall v1.42.1 应用的 ProcessPhoenix.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.jakewharton.processphoenix;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Process;
import java.util.ArrayList;
import java.util.Arrays;
public final class ProcessPhoenix extends Activity {
private static Intent a(Context context) {
String packageName = context.getPackageName();
Intent launchIntentForPackage = context.getPackageManager().getLaunchIntentForPackage(packageName);
if (launchIntentForPackage != null) {
return launchIntentForPackage;
}
throw new IllegalStateException("Unable to determine default activity for " + packageName + ". Does an activity specify the DEFAULT category in its intent filter?");
}
public static void b(Context context) {
c(context, a(context));
}
public static void c(Context context, Intent... intentArr) {
if (intentArr.length < 1) {
throw new IllegalArgumentException("intents cannot be empty");
}
intentArr[0].addFlags(268468224);
Intent intent = new Intent(context, (Class<?>) ProcessPhoenix.class);
intent.addFlags(268435456);
intent.putParcelableArrayListExtra("phoenix_restart_intents", new ArrayList<>(Arrays.asList(intentArr)));
intent.putExtra("phoenix_main_process_pid", Process.myPid());
context.startActivity(intent);
}
@Override
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
Process.killProcess(getIntent().getIntExtra("phoenix_main_process_pid", -1));
ArrayList parcelableArrayListExtra = getIntent().getParcelableArrayListExtra("phoenix_restart_intents");
startActivities((Intent[]) parcelableArrayListExtra.toArray(new Intent[parcelableArrayListExtra.size()]));
finish();
Runtime.getRuntime().exit(0);
}
}