obsidian/笔记文件/2.笔记/安卓重启.md
2025-03-26 00:02:56 +08:00

1.1 KiB

#安卓

public static void RestartApplication() {
        Activity activity = UnityPlayer.currentActivity;
        Context context = activity.getApplicationContext();
        // 方法1
        Intent intent = context.getPackageManager().getLaunchIntentForPackage(context.getPackageName());
//        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//        context.startActivity(intent);
//        android.os.Process.killProcess(android.os.Process.myPid());
        // 方法2
//        Intent intent = context.getPackageManager().getLaunchIntentForPackage(context.getPackageName());
//        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
//        context.startActivity(intent);
        // 方法3
//        ActivityManager manager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
//        manager.killBackgroundProcesses(context.getPackageName());

        // 方法4 √
        Intent restartIntent = Intent.makeRestartActivityTask(intent.getComponent());
        context.startActivity(restartIntent);
        System.exit(0);
    }