Files
rr3-apk/smali/androidx/browser/customtabs/CustomTabsService.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

361 lines
12 KiB
Smali

.class public abstract Landroidx/browser/customtabs/CustomTabsService;
.super Landroid/app/Service;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/browser/customtabs/CustomTabsService$FilePurpose;,
Landroidx/browser/customtabs/CustomTabsService$Relation;,
Landroidx/browser/customtabs/CustomTabsService$Result;
}
.end annotation
# static fields
.field public static final ACTION_CUSTOM_TABS_CONNECTION:Ljava/lang/String; = "android.support.customtabs.action.CustomTabsService"
.field public static final CATEGORY_COLOR_SCHEME_CUSTOMIZATION:Ljava/lang/String; = "androidx.browser.customtabs.category.ColorSchemeCustomization"
.field public static final CATEGORY_NAVBAR_COLOR_CUSTOMIZATION:Ljava/lang/String; = "androidx.browser.customtabs.category.NavBarColorCustomization"
.field public static final CATEGORY_TRUSTED_WEB_ACTIVITY_IMMERSIVE_MODE:Ljava/lang/String; = "androidx.browser.trusted.category.ImmersiveMode"
.field public static final CATEGORY_WEB_SHARE_TARGET_V2:Ljava/lang/String; = "androidx.browser.trusted.category.WebShareTargetV2"
.field public static final FILE_PURPOSE_TRUSTED_WEB_ACTIVITY_SPLASH_IMAGE:I = 0x1
.field public static final KEY_SUCCESS:Ljava/lang/String; = "androidx.browser.customtabs.SUCCESS"
.field public static final KEY_URL:Ljava/lang/String; = "android.support.customtabs.otherurls.URL"
.field public static final RELATION_HANDLE_ALL_URLS:I = 0x2
.field public static final RELATION_USE_AS_ORIGIN:I = 0x1
.field public static final RESULT_FAILURE_DISALLOWED:I = -0x1
.field public static final RESULT_FAILURE_MESSAGING_ERROR:I = -0x3
.field public static final RESULT_FAILURE_REMOTE_ERROR:I = -0x2
.field public static final RESULT_SUCCESS:I = 0x0
.field private static final TAG:Ljava/lang/String; = "CustomTabsService"
.field public static final TRUSTED_WEB_ACTIVITY_CATEGORY:Ljava/lang/String; = "androidx.browser.trusted.category.TrustedWebActivities"
# instance fields
.field private mBinder:Landroid/support/customtabs/ICustomTabsService$Stub;
.field final mDeathRecipientMap:Landroidx/collection/SimpleArrayMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroidx/collection/SimpleArrayMap<",
"Landroid/os/IBinder;",
"Landroid/os/IBinder$DeathRecipient;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.locals 1
.line 48
invoke-direct {p0}, Landroid/app/Service;-><init>()V
.line 168
new-instance v0, Landroidx/collection/SimpleArrayMap;
invoke-direct {v0}, Landroidx/collection/SimpleArrayMap;-><init>()V
iput-object v0, p0, Landroidx/browser/customtabs/CustomTabsService;->mDeathRecipientMap:Landroidx/collection/SimpleArrayMap;
.line 170
new-instance v0, Landroidx/browser/customtabs/CustomTabsService$1;
invoke-direct {v0, p0}, Landroidx/browser/customtabs/CustomTabsService$1;-><init>(Landroidx/browser/customtabs/CustomTabsService;)V
iput-object v0, p0, Landroidx/browser/customtabs/CustomTabsService;->mBinder:Landroid/support/customtabs/ICustomTabsService$Stub;
return-void
.end method
# virtual methods
.method public cleanUpSession(Landroidx/browser/customtabs/CustomTabsSessionToken;)Z
.locals 3
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
const/4 v0, 0x0
:try_start_0
iget-object v1, p0, Landroidx/browser/customtabs/CustomTabsService;->mDeathRecipientMap:Landroidx/collection/SimpleArrayMap;
.line 323
monitor-enter v1
:try_end_0
.catch Ljava/util/NoSuchElementException; {:try_start_0 .. :try_end_0} :catch_0
.line 324
:try_start_1
invoke-virtual {p1}, Landroidx/browser/customtabs/CustomTabsSessionToken;->getCallbackBinder()Landroid/os/IBinder;
move-result-object p1
if-nez p1, :cond_0
.line 325
monitor-exit v1
return v0
:catchall_0
move-exception p1
goto :goto_0
:cond_0
iget-object v2, p0, Landroidx/browser/customtabs/CustomTabsService;->mDeathRecipientMap:Landroidx/collection/SimpleArrayMap;
.line 326
invoke-virtual {v2, p1}, Landroidx/collection/SimpleArrayMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroid/os/IBinder$DeathRecipient;
.line 327
invoke-interface {p1, v2, v0}, Landroid/os/IBinder;->unlinkToDeath(Landroid/os/IBinder$DeathRecipient;I)Z
iget-object v2, p0, Landroidx/browser/customtabs/CustomTabsService;->mDeathRecipientMap:Landroidx/collection/SimpleArrayMap;
.line 328
invoke-virtual {v2, p1}, Landroidx/collection/SimpleArrayMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
.line 329
monitor-exit v1
const/4 p1, 0x1
return p1
:goto_0
monitor-exit v1
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:try_start_2
throw p1
:try_end_2
.catch Ljava/util/NoSuchElementException; {:try_start_2 .. :try_end_2} :catch_0
:catch_0
return v0
.end method
.method public abstract extraCommand(Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/os/Bundle;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end method
.method public isEngagementSignalsApiAvailable(Landroidx/browser/customtabs/CustomTabsSessionToken;Landroid/os/Bundle;)Z
.locals 0
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/os/Bundle;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
const/4 p1, 0x0
return p1
.end method
.method public abstract mayLaunchUrl(Landroidx/browser/customtabs/CustomTabsSessionToken;Landroid/net/Uri;Landroid/os/Bundle;Ljava/util/List;)Z
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/net/Uri;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p3 # Landroid/os/Bundle;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p4 # Ljava/util/List;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroidx/browser/customtabs/CustomTabsSessionToken;",
"Landroid/net/Uri;",
"Landroid/os/Bundle;",
"Ljava/util/List<",
"Landroid/os/Bundle;",
">;)Z"
}
.end annotation
.end method
.method public abstract newSession(Landroidx/browser/customtabs/CustomTabsSessionToken;)Z
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.end method
.method public onBind(Landroid/content/Intent;)Landroid/os/IBinder;
.locals 0
.param p1 # Landroid/content/Intent;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/NonNull;
.end annotation
iget-object p1, p0, Landroidx/browser/customtabs/CustomTabsService;->mBinder:Landroid/support/customtabs/ICustomTabsService$Stub;
return-object p1
.end method
.method public abstract postMessage(Landroidx/browser/customtabs/CustomTabsSessionToken;Ljava/lang/String;Landroid/os/Bundle;)I
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Ljava/lang/String;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroid/os/Bundle;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.end method
.method public abstract receiveFile(Landroidx/browser/customtabs/CustomTabsSessionToken;Landroid/net/Uri;ILandroid/os/Bundle;)Z
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p4 # Landroid/os/Bundle;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.end method
.method public abstract requestPostMessageChannel(Landroidx/browser/customtabs/CustomTabsSessionToken;Landroid/net/Uri;)Z
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.end method
.method public requestPostMessageChannel(Landroidx/browser/customtabs/CustomTabsSessionToken;Landroid/net/Uri;Landroid/net/Uri;Landroid/os/Bundle;)Z
.locals 0
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroid/net/Uri;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.param p4 # Landroid/os/Bundle;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.line 457
invoke-virtual {p0, p1, p2}, Landroidx/browser/customtabs/CustomTabsService;->requestPostMessageChannel(Landroidx/browser/customtabs/CustomTabsSessionToken;Landroid/net/Uri;)Z
move-result p1
return p1
.end method
.method public setEngagementSignalsCallback(Landroidx/browser/customtabs/CustomTabsSessionToken;Landroidx/browser/customtabs/EngagementSignalsCallback;Landroid/os/Bundle;)Z
.locals 0
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroidx/browser/customtabs/EngagementSignalsCallback;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroid/os/Bundle;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
const/4 p1, 0x0
return p1
.end method
.method public abstract updateVisuals(Landroidx/browser/customtabs/CustomTabsSessionToken;Landroid/os/Bundle;)Z
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p2 # Landroid/os/Bundle;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.end method
.method public abstract validateRelationship(Landroidx/browser/customtabs/CustomTabsSessionToken;ILandroid/net/Uri;Landroid/os/Bundle;)Z
.param p1 # Landroidx/browser/customtabs/CustomTabsSessionToken;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p3 # Landroid/net/Uri;
.annotation build Landroidx/annotation/NonNull;
.end annotation
.end param
.param p4 # Landroid/os/Bundle;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.end method
.method public abstract warmup(J)Z
.end method