Завершить инженерный кандидат Stage 5

This commit is contained in:
2026-08-19 02:04:45 +03:00
parent b840684ef3
commit cde886ca96
45 changed files with 3236 additions and 98 deletions
@@ -9,6 +9,7 @@ import android.view.WindowInsetsController;
import android.view.WindowManager;
public final class MainActivity extends Activity {
private static final String ACTIVE_SESSION_STATE = "active_session_v2";
private GameView gameView;
@Override
@@ -17,10 +18,23 @@ public final class MainActivity extends Activity {
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
gameView = new GameView(this);
if (savedInstanceState != null) {
byte[] encoded = savedInstanceState.getByteArray(ACTIVE_SESSION_STATE);
if (encoded != null) gameView.restoreSessionFromActivityState(encoded);
}
setContentView(gameView);
hideSystemUi();
}
@Override
protected void onSaveInstanceState(Bundle outState) {
if (gameView != null) {
byte[] encoded = gameView.saveSessionForActivityState();
if (encoded != null) outState.putByteArray(ACTIVE_SESSION_STATE, encoded);
}
super.onSaveInstanceState(outState);
}
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);