优化重启的实现

lowmem
Matthew 1 month ago
parent aeb8e49b81
commit 4067f2d6ed

@ -429,28 +429,35 @@ public class MainActivity extends AppCompatActivity {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
restartSelfWithStartActivity(); restartSelfWithStartActivity();
// restartSelfWithAlarmManager();
} }
private void restartSelfWithStartActivity() { private void restartSelfWithStartActivity() {
Context context = MainActivity.this; final Context context = getApplicationContext();
Intent intent = new Intent(context, MainActivity.class); Intent intent = new Intent(context, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK| Intent.FLAG_ACTIVITY_CLEAR_TASK); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
int noDelay = 1; int noDelay = 1;
intent.putExtra("noDelay", noDelay); intent.putExtra("noDelay", noDelay);
intent.putExtra("reason", "Manual Restart From MainActivity"); intent.putExtra("reason", "Manual Restart From MainActivity");
// finish();
context.startActivity(intent); context.startActivity(intent);
final Handler handler = new Handler();
finish();
handler.postDelayed(new Runnable() {
@Override
public void run() {
System.exit(0); System.exit(0);
} }
}, 0);
}
private void restartSelfWithAlarmManager() { private void restartSelfWithAlarmManager() {
Intent intent = new Intent(MainActivity.this, MainActivity.class); Intent intent = new Intent(MainActivity.this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK| Intent.FLAG_ACTIVITY_CLEAR_TASK); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
int noDelay = 1; int noDelay = 1;
intent.putExtra("noDelay", noDelay); intent.putExtra("noDelay", noDelay);

Loading…
Cancel
Save