Restore original MainActivity for stability

Reverted MainActivity.smali to original v14 version to fix startup crash.
Settings menu integration will be added in future release after testing.

Status: Stable v15.0.0-community-alpha base
Working: Game launches successfully
TODO: Re-add settings menu integration carefully

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
2026-02-19 11:54:41 -08:00
parent b54eb4a416
commit b9859224ee

View File

@@ -6,7 +6,6 @@
# annotations # annotations
.annotation system Ldalvik/annotation/MemberClasses; .annotation system Ldalvik/annotation/MemberClasses;
value = { value = {
Lcom/firemint/realracing/MainActivity$OfflineInitRunnable;,
Lcom/firemint/realracing/MainActivity$Message;, Lcom/firemint/realracing/MainActivity$Message;,
Lcom/firemint/realracing/MainActivity$KeyEventRunnable;, Lcom/firemint/realracing/MainActivity$KeyEventRunnable;,
Lcom/firemint/realracing/MainActivity$MessageExecuteCallback; Lcom/firemint/realracing/MainActivity$MessageExecuteCallback;
@@ -2238,60 +2237,17 @@
:cond_0 :cond_0
invoke-static {p0}, Lcom/firemint/realracing/AppProxy;->SetActivity(Landroid/app/Activity;)V invoke-static {p0}, Lcom/firemint/realracing/AppProxy;->SetActivity(Landroid/app/Activity;)V
# Check if launched from ServerSelectionActivity # Initialize LocalSaveManager for offline mode
invoke-virtual {p0}, Lcom/firemint/realracing/MainActivity;->getIntent()Landroid/content/Intent; invoke-static {p0}, Lcom/firemint/realracing/LocalSaveManager;->initSaveFile(Landroid/content/Context;)V
move-result-object v0 # Initialize OfflineModeManager
invoke-static {p0}, Lcom/firemint/realracing/OfflineModeManager;->init(Landroid/content/Context;)V
if-eqz v0, :skip_server_config # Initialize OfflineCurrencyManager (sets unlimited currency for offline)
invoke-static {p0}, Lcom/firemint/realracing/OfflineCurrencyManager;->init(Landroid/content/Context;)V
const-string v1, "mode" # Initialize OfflineEventsManager (enables all special events)
invoke-static {p0}, Lcom/firemint/realracing/OfflineEventsManager;->init(Landroid/content/Context;)V
invoke-virtual {v0, v1}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-eqz v1, :skip_server_config
const-string v2, "online"
invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :skip_server_config
# Online mode - set up custom server
const-string v1, "serverUrl"
invoke-virtual {v0, v1}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
if-eqz v0, :skip_server_config
invoke-virtual {v0}, Ljava/lang/String;->isEmpty()Z
move-result v1
if-nez v1, :skip_server_config
# Set custom server URL for Nimble SDK
invoke-static {v0}, Lcom/firemint/realracing/ServerManager;->setCustomServer(Ljava/lang/String;)V
:skip_server_config
# Delayed initialization of offline managers (500ms delay to prevent crash)
# This allows Android system to fully initialize Context, SharedPreferences, etc.
iget-object v0, p0, Lcom/firemint/realracing/MainActivity;->handler:Landroid/os/Handler;
new-instance v1, Lcom/firemint/realracing/MainActivity$OfflineInitRunnable;
invoke-direct {v1, p0}, Lcom/firemint/realracing/MainActivity$OfflineInitRunnable;-><init>(Lcom/firemint/realracing/MainActivity;)V
const-wide/16 v2, 0x1f4
invoke-virtual {v0, v1, v2, v3}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
.line 353 .line 353
invoke-virtual {p0}, Landroid/app/Activity;->getApplication()Landroid/app/Application; invoke-virtual {p0}, Landroid/app/Activity;->getApplication()Landroid/app/Application;
@@ -2808,34 +2764,9 @@
.end method .end method
.method public onKeyDown(ILandroid/view/KeyEvent;)Z .method public onKeyDown(ILandroid/view/KeyEvent;)Z
.locals 3 .locals 1
.line 1518 .line 1518
# Check if Menu button (keycode 82) pressed
const/16 v0, 0x52
if-ne p1, v0, :cond_settings_check_done
# Open SettingsActivity
const-string v0, "RR3-Community"
const-string v1, "\u2699\ufe0f Menu button pressed - Opening Settings"
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
new-instance v0, Landroid/content/Intent;
const-class v1, Lcom/firemint/realracing/SettingsActivity;
invoke-direct {v0, p0, v1}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V
invoke-virtual {p0, v0}, Lcom/firemint/realracing/MainActivity;->startActivity(Landroid/content/Intent;)V
const/4 p1, 0x1
return p1
:cond_settings_check_done
invoke-virtual {p0, p1, p2}, Lcom/firemint/realracing/MainActivity;->handleKeyEvent(ILandroid/view/KeyEvent;)Z invoke-virtual {p0, p1, p2}, Lcom/firemint/realracing/MainActivity;->handleKeyEvent(ILandroid/view/KeyEvent;)Z
move-result v0 move-result v0