Files
rr3-apk/smali_classes2/com/bda/controller/Controller.smali
Daniel Elliott f3960ee359 Add Discord APKTool decompilation (Smali source for modding)
- Imported from https://github.com/supermegamestre/Project-Real-Resurrection-3
- APKTool decompilation (Smali bytecode) for modding and rebuilding APK
- Supports both 32-bit (armeabi-v7a) and 64-bit (arm64-v8a) architectures
- Includes full Smali source, resources, and native libraries
- Ready to rebuild APK after modifications with apktool b command
- Added comprehensive README-apktool.md with modding guide

This branch complements the JADX branches:
- Use JADX (main/discord-community) to UNDERSTAND code (readable Java)
- Use APKTool (this branch) to MODIFY and REBUILD APK (editable Smali)

Total: 44,417 files, 538.51 MB Smali source code
2026-02-18 16:13:44 -08:00

370 lines
11 KiB
Smali

.class public final Lcom/bda/controller/Controller;
.super Ljava/lang/Object;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/bda/controller/Controller$IControllerListenerStub;,
Lcom/bda/controller/Controller$IControllerMonitorStub;,
Lcom/bda/controller/Controller$KeyRunnable;,
Lcom/bda/controller/Controller$MotionRunnable;,
Lcom/bda/controller/Controller$ServiceConnection;,
Lcom/bda/controller/Controller$StateRunnable;
}
.end annotation
# instance fields
.field public mActivityEvent:I
.field public final mContext:Landroid/content/Context;
.field public mHandler:Landroid/os/Handler;
.field public mIsBound:Z
.field public mListener:Lcom/bda/controller/ControllerListener;
.field public final mListenerStub:Lcom/bda/controller/IControllerListener$Stub;
.field public final mMonitorStub:Lcom/bda/controller/IControllerMonitor$Stub;
.field public mService:Lcom/bda/controller/IControllerService;
.field public final mServiceConnection:Lcom/bda/controller/Controller$ServiceConnection;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 2
.line 217
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/bda/controller/Controller;->mIsBound:Z
const/4 v0, 0x0
iput-object v0, p0, Lcom/bda/controller/Controller;->mService:Lcom/bda/controller/IControllerService;
.line 209
new-instance v1, Lcom/bda/controller/Controller$IControllerListenerStub;
invoke-direct {v1, p0}, Lcom/bda/controller/Controller$IControllerListenerStub;-><init>(Lcom/bda/controller/Controller;)V
iput-object v1, p0, Lcom/bda/controller/Controller;->mListenerStub:Lcom/bda/controller/IControllerListener$Stub;
.line 210
new-instance v1, Lcom/bda/controller/Controller$IControllerMonitorStub;
invoke-direct {v1, p0}, Lcom/bda/controller/Controller$IControllerMonitorStub;-><init>(Lcom/bda/controller/Controller;)V
iput-object v1, p0, Lcom/bda/controller/Controller;->mMonitorStub:Lcom/bda/controller/IControllerMonitor$Stub;
.line 211
new-instance v1, Lcom/bda/controller/Controller$ServiceConnection;
invoke-direct {v1, p0}, Lcom/bda/controller/Controller$ServiceConnection;-><init>(Lcom/bda/controller/Controller;)V
iput-object v1, p0, Lcom/bda/controller/Controller;->mServiceConnection:Lcom/bda/controller/Controller$ServiceConnection;
const/4 v1, 0x6
iput v1, p0, Lcom/bda/controller/Controller;->mActivityEvent:I
iput-object v0, p0, Lcom/bda/controller/Controller;->mHandler:Landroid/os/Handler;
iput-object v0, p0, Lcom/bda/controller/Controller;->mListener:Lcom/bda/controller/ControllerListener;
iput-object p1, p0, Lcom/bda/controller/Controller;->mContext:Landroid/content/Context;
return-void
.end method
.method public static final getInstance(Landroid/content/Context;)Lcom/bda/controller/Controller;
.locals 1
.line 203
new-instance v0, Lcom/bda/controller/Controller;
invoke-direct {v0, p0}, Lcom/bda/controller/Controller;-><init>(Landroid/content/Context;)V
return-object v0
.end method
# virtual methods
.method public final exit()V
.locals 2
const/4 v0, 0x0
.line 225
invoke-virtual {p0, v0, v0}, Lcom/bda/controller/Controller;->setListener(Lcom/bda/controller/ControllerListener;Landroid/os/Handler;)V
.line 226
invoke-virtual {p0, v0}, Lcom/bda/controller/Controller;->setMonitor(Lcom/bda/controller/ControllerMonitor;)V
iget-boolean v0, p0, Lcom/bda/controller/Controller;->mIsBound:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/bda/controller/Controller;->mContext:Landroid/content/Context;
iget-object v1, p0, Lcom/bda/controller/Controller;->mServiceConnection:Lcom/bda/controller/Controller$ServiceConnection;
.line 229
invoke-virtual {v0, v1}, Landroid/content/Context;->unbindService(Landroid/content/ServiceConnection;)V
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/bda/controller/Controller;->mIsBound:Z
:cond_0
return-void
.end method
.method public final getState(I)I
.locals 2
iget-object v0, p0, Lcom/bda/controller/Controller;->mService:Lcom/bda/controller/IControllerService;
if-eqz v0, :cond_0
const/4 v1, 0x1
.line 312
:try_start_0
invoke-interface {v0, v1, p1}, Lcom/bda/controller/IControllerService;->getState(II)I
move-result p1
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0
return p1
:catch_0
:cond_0
const/4 p1, 0x0
return p1
.end method
.method public final init()Z
.locals 4
iget-boolean v0, p0, Lcom/bda/controller/Controller;->mIsBound:Z
if-nez v0, :cond_0
.line 324
new-instance v0, Landroid/content/Intent;
const-class v1, Lcom/bda/controller/IControllerService;
invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
iget-object v1, p0, Lcom/bda/controller/Controller;->mContext:Landroid/content/Context;
.line 325
invoke-virtual {v1, v0}, Landroid/content/Context;->startService(Landroid/content/Intent;)Landroid/content/ComponentName;
iget-object v1, p0, Lcom/bda/controller/Controller;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/bda/controller/Controller;->mServiceConnection:Lcom/bda/controller/Controller$ServiceConnection;
const/4 v3, 0x1
.line 326
invoke-virtual {v1, v0, v2, v3}, Landroid/content/Context;->bindService(Landroid/content/Intent;Landroid/content/ServiceConnection;I)Z
iput-boolean v3, p0, Lcom/bda/controller/Controller;->mIsBound:Z
:cond_0
iget-boolean v0, p0, Lcom/bda/controller/Controller;->mIsBound:Z
return v0
.end method
.method public final onPause()V
.locals 2
const/4 v0, 0x6
iput v0, p0, Lcom/bda/controller/Controller;->mActivityEvent:I
const/4 v1, 0x1
.line 337
invoke-virtual {p0, v1, v0}, Lcom/bda/controller/Controller;->sendMessage(II)V
.line 338
invoke-virtual {p0}, Lcom/bda/controller/Controller;->registerListener()V
return-void
.end method
.method public final onResume()V
.locals 2
const/4 v0, 0x5
iput v0, p0, Lcom/bda/controller/Controller;->mActivityEvent:I
const/4 v1, 0x1
.line 346
invoke-virtual {p0, v1, v0}, Lcom/bda/controller/Controller;->sendMessage(II)V
.line 347
invoke-virtual {p0}, Lcom/bda/controller/Controller;->registerListener()V
return-void
.end method
.method public registerListener()V
.locals 3
iget-object v0, p0, Lcom/bda/controller/Controller;->mListener:Lcom/bda/controller/ControllerListener;
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/bda/controller/Controller;->mService:Lcom/bda/controller/IControllerService;
if-eqz v0, :cond_0
:try_start_0
iget-object v1, p0, Lcom/bda/controller/Controller;->mListenerStub:Lcom/bda/controller/IControllerListener$Stub;
iget v2, p0, Lcom/bda/controller/Controller;->mActivityEvent:I
.line 354
invoke-interface {v0, v1, v2}, Lcom/bda/controller/IControllerService;->registerListener2(Lcom/bda/controller/IControllerListener;I)V
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
:try_start_1
iget-object v0, p0, Lcom/bda/controller/Controller;->mService:Lcom/bda/controller/IControllerService;
iget-object v1, p0, Lcom/bda/controller/Controller;->mListenerStub:Lcom/bda/controller/IControllerListener$Stub;
iget v2, p0, Lcom/bda/controller/Controller;->mActivityEvent:I
.line 357
invoke-interface {v0, v1, v2}, Lcom/bda/controller/IControllerService;->registerListener(Lcom/bda/controller/IControllerListener;I)V
:try_end_1
.catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_1} :catch_1
:catch_1
:cond_0
:goto_0
return-void
.end method
.method public registerMonitor()V
.locals 0
return-void
.end method
.method public sendMessage(II)V
.locals 1
iget-object v0, p0, Lcom/bda/controller/Controller;->mService:Lcom/bda/controller/IControllerService;
if-eqz v0, :cond_0
.line 379
:try_start_0
invoke-interface {v0, p1, p2}, Lcom/bda/controller/IControllerService;->sendMessage(II)V
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
:cond_0
return-void
.end method
.method public final setListener(Lcom/bda/controller/ControllerListener;Landroid/os/Handler;)V
.locals 0
.line 394
invoke-virtual {p0}, Lcom/bda/controller/Controller;->unregisterListener()V
iput-object p1, p0, Lcom/bda/controller/Controller;->mListener:Lcom/bda/controller/ControllerListener;
iput-object p2, p0, Lcom/bda/controller/Controller;->mHandler:Landroid/os/Handler;
.line 397
invoke-virtual {p0}, Lcom/bda/controller/Controller;->registerListener()V
return-void
.end method
.method public final setMonitor(Lcom/bda/controller/ControllerMonitor;)V
.locals 0
.line 401
invoke-virtual {p0}, Lcom/bda/controller/Controller;->unregisterMonitor()V
.line 403
invoke-virtual {p0}, Lcom/bda/controller/Controller;->registerMonitor()V
return-void
.end method
.method public unregisterListener()V
.locals 3
iget-object v0, p0, Lcom/bda/controller/Controller;->mService:Lcom/bda/controller/IControllerService;
if-eqz v0, :cond_0
:try_start_0
iget-object v1, p0, Lcom/bda/controller/Controller;->mListenerStub:Lcom/bda/controller/IControllerListener$Stub;
iget v2, p0, Lcom/bda/controller/Controller;->mActivityEvent:I
.line 409
invoke-interface {v0, v1, v2}, Lcom/bda/controller/IControllerService;->unregisterListener(Lcom/bda/controller/IControllerListener;I)V
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
:cond_0
return-void
.end method
.method public unregisterMonitor()V
.locals 3
iget-object v0, p0, Lcom/bda/controller/Controller;->mService:Lcom/bda/controller/IControllerService;
if-eqz v0, :cond_0
:try_start_0
iget-object v1, p0, Lcom/bda/controller/Controller;->mMonitorStub:Lcom/bda/controller/IControllerMonitor$Stub;
iget v2, p0, Lcom/bda/controller/Controller;->mActivityEvent:I
.line 418
invoke-interface {v0, v1, v2}, Lcom/bda/controller/IControllerService;->unregisterMonitor(Lcom/bda/controller/IControllerMonitor;I)V
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
:cond_0
return-void
.end method