[app] Restart activity with recreate on Android S (#959)

This commit is contained in:
tehcneko 2021-08-20 14:26:30 +08:00 committed by GitHub
parent 4b02172fd9
commit bde68a44cb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 11 additions and 6 deletions

View File

@ -29,6 +29,7 @@ import android.view.MotionEvent;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.core.os.BuildCompat;
import androidx.navigation.NavController;
import androidx.navigation.Navigation;
import androidx.navigation.fragment.NavHostFragment;
@ -124,12 +125,16 @@ public class MainActivity extends BaseActivity {
}
public void restart() {
Bundle savedInstanceState = new Bundle();
onSaveInstanceState(savedInstanceState);
finish();
startActivity(newIntent(savedInstanceState, this));
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
restarting = true;
if (BuildCompat.isAtLeastS()) {
recreate();
} else {
Bundle savedInstanceState = new Bundle();
onSaveInstanceState(savedInstanceState);
finish();
startActivity(newIntent(savedInstanceState, this));
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
restarting = true;
}
}
@Override