package org.cnodejs.android.md.ui.util;
import android.app.Activity;
import android.content.Intent;
import android.os.Build;
import android.support.annotation.NonNull;
import org.cnodejs.android.md.util.HandlerUtils;
public final class ActivityUtils {
private ActivityUtils() {}
public static boolean isAlive(Activity activity) {
return activity != null && !(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1 && activity.isDestroyed()) && !activity.isFinishing();
}
public static void recreate(@NonNull Activity activity) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
activity.recreate();
} else {
Intent intent = activity.getIntent();
intent.setClass(activity, activity.getClass());
activity.startActivity(intent);
activity.finish();
activity.overridePendingTransition(0, 0);
}
}
public static void recreateDelayed(@NonNull final Activity activity) {
HandlerUtils.handler.post(new Runnable() {
@Override
public void run() {
recreate(activity);
}
});
}
}