אמרו לי שזה קשור ל services.jar.
ראיתי בתוכו בנתיב
com/android/server/adb/AdbDebuggingManager.smali
את הקוד הבא:
.class public Lcom/android/server/adb/AdbDebuggingManager;
.super Ljava/lang/Object;
.source "AdbDebuggingManager.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/server/adb/AdbDebuggingManager$Ticker;,
Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;,
Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;,
Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;,
Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;,
Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;,
Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;,
Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortListener;,
Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
}
.end annotation
# static fields
.field private static final ADBD_SOCKET:Ljava/lang/String; = "adbd"
.field private static final ADB_DIRECTORY:Ljava/lang/String; = "misc/adb"
.field private static final ADB_KEYS_FILE:Ljava/lang/String; = "adb_keys"
.field private static final ADB_TEMP_KEYS_FILE:Ljava/lang/String; = "adb_temp_keys.xml"
.field private static final BUFFER_SIZE:I = 0x10000
.field private static final DEBUG:Z = false
.field private static final MDNS_DEBUG:Z = false
.field private static final PAIRING_CODE_LENGTH:I = 0x6
.field private static final SYSTEM_TICKER:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
.field private static final TAG:Ljava/lang/String;
.field private static final WIFI_PERSISTENT_CONFIG_PROPERTY:Ljava/lang/String; = "persist.adb.tls_server.enable"
.field private static final WIFI_PERSISTENT_GUID:Ljava/lang/String; = "persist.adb.wifi.guid"
# instance fields
.field private mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
.field private mAdbUsbEnabled:Z
.field private mAdbWifiEnabled:Z
.field private final mConfirmComponent:Ljava/lang/String;
.field private final mConnectedKeys:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field private mConnectionPortPoller:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
.field private final mContentResolver:Landroid/content/ContentResolver;
.field private final mContext:Landroid/content/Context;
.field private mFingerprints:Ljava/lang/String;
.field final mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
.field private mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
.field private final mPortListener:Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
.field private final mTempKeysFile:Ljava/io/File;
.field private mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
.field private final mTicker:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
.field private final mUserKeyFile:Ljava/io/File;
.field private final mWifiConnectedKeys:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Ljava/lang/String;",
">;"
}
.end annotation
.end field
# direct methods
.method static bridge synthetic -$$Nest$fgetmAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmAdbUsbEnabled(Lcom/android/server/adb/AdbDebuggingManager;)Z
.registers 1
iget-boolean p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbUsbEnabled:Z
return p0
.end method
.method static bridge synthetic -$$Nest$fgetmAdbWifiEnabled(Lcom/android/server/adb/AdbDebuggingManager;)Z
.registers 1
iget-boolean p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
return p0
.end method
.method static bridge synthetic -$$Nest$fgetmConnectedKeys(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/util/Map;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectedKeys:Ljava/util/Map;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmConnectionPortPoller(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectionPortPoller:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmContentResolver(Lcom/android/server/adb/AdbDebuggingManager;)Landroid/content/ContentResolver;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContentResolver:Landroid/content/ContentResolver;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmContext(Lcom/android/server/adb/AdbDebuggingManager;)Landroid/content/Context;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmFingerprints(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/lang/String;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mFingerprints:Ljava/lang/String;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmPairingThread(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmPortListener(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPortListener:Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmTempKeysFile(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/io/File;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmThread(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmTicker(Lcom/android/server/adb/AdbDebuggingManager;)Lcom/android/server/adb/AdbDebuggingManager$Ticker;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTicker:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmUserKeyFile(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/io/File;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fgetmWifiConnectedKeys(Lcom/android/server/adb/AdbDebuggingManager;)Ljava/util/Set;
.registers 1
iget-object p0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mWifiConnectedKeys:Ljava/util/Set;
return-object p0
.end method
.method static bridge synthetic -$$Nest$fputmAdbUsbEnabled(Lcom/android/server/adb/AdbDebuggingManager;Z)V
.registers 2
iput-boolean p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbUsbEnabled:Z
return-void
.end method
.method static bridge synthetic -$$Nest$fputmAdbWifiEnabled(Lcom/android/server/adb/AdbDebuggingManager;Z)V
.registers 2
iput-boolean p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
return-void
.end method
.method static bridge synthetic -$$Nest$fputmConnectionPortPoller(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;)V
.registers 2
iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectionPortPoller:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionPortPoller;
return-void
.end method
.method static bridge synthetic -$$Nest$fputmFingerprints(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;)V
.registers 2
iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mFingerprints:Ljava/lang/String;
return-void
.end method
.method static bridge synthetic -$$Nest$fputmPairingThread(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$PairingThread;)V
.registers 2
iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
return-void
.end method
.method static bridge synthetic -$$Nest$fputmThread(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;)V
.registers 2
iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
return-void
.end method
.method static bridge synthetic -$$Nest$mgetFingerprints(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;)Ljava/lang/String;
.registers 2
invoke-direct {p0, p1}, Lcom/android/server/adb/AdbDebuggingManager;->getFingerprints(Ljava/lang/String;)Ljava/lang/String;
move-result-object p0
return-object p0
.end method
.method static bridge synthetic -$$Nest$msendPersistKeyStoreMessage(Lcom/android/server/adb/AdbDebuggingManager;)V
.registers 1
invoke-direct {p0}, Lcom/android/server/adb/AdbDebuggingManager;->sendPersistKeyStoreMessage()V
return-void
.end method
.method static bridge synthetic -$$Nest$msetAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager;Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
.registers 2
invoke-direct {p0, p1}, Lcom/android/server/adb/AdbDebuggingManager;->setAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
return-void
.end method
.method static bridge synthetic -$$Nest$mstartConfirmationForKey(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;Ljava/lang/String;)V
.registers 3
invoke-direct {p0, p1, p2}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationForKey(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method static bridge synthetic -$$Nest$mstartConfirmationForNetwork(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/String;Ljava/lang/String;)V
.registers 3
invoke-direct {p0, p1, p2}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationForNetwork(Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method static bridge synthetic -$$Nest$mwriteKeys(Lcom/android/server/adb/AdbDebuggingManager;Ljava/lang/Iterable;)V
.registers 2
invoke-direct {p0, p1}, Lcom/android/server/adb/AdbDebuggingManager;->writeKeys(Ljava/lang/Iterable;)V
return-void
.end method
.method static bridge synthetic -$$Nest$sfgetTAG()Ljava/lang/String;
.registers 1
sget-object v0, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
return-object v0
.end method
.method static constructor <clinit>()V
.registers 1
.line 124
const-class v0, Lcom/android/server/adb/AdbDebuggingManager;
invoke-virtual {v0}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
.line 136
new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$$ExternalSyntheticLambda0;
invoke-direct {v0}, Lcom/android/server/adb/AdbDebuggingManager$$ExternalSyntheticLambda0;-><init>()V
sput-object v0, Lcom/android/server/adb/AdbDebuggingManager;->SYSTEM_TICKER:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
return-void
.end method
.method public constructor <init>(Landroid/content/Context;)V
.registers 10
.param p1, "context" # Landroid/content/Context;
.line 167
nop
.line 170
const-string v0, "adb_keys"
invoke-static {v0}, Lcom/android/server/adb/AdbDebuggingManager;->getAdbFile(Ljava/lang/String;)Ljava/io/File;
move-result-object v4
.line 171
const-string v0, "adb_temp_keys.xml"
invoke-static {v0}, Lcom/android/server/adb/AdbDebuggingManager;->getAdbFile(Ljava/lang/String;)Ljava/io/File;
move-result-object v5
sget-object v7, Lcom/android/server/adb/AdbDebuggingManager;->SYSTEM_TICKER:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
.line 167
const/4 v3, 0x0
const/4 v6, 0x0
move-object v1, p0
move-object v2, p1
invoke-direct/range {v1 .. v7}, Lcom/android/server/adb/AdbDebuggingManager;-><init>(Landroid/content/Context;Ljava/lang/String;Ljava/io/File;Ljava/io/File;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;Lcom/android/server/adb/AdbDebuggingManager$Ticker;)V
.line 174
return-void
.end method
.method constructor <init>(Landroid/content/Context;Ljava/lang/String;Ljava/io/File;Ljava/io/File;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;Lcom/android/server/adb/AdbDebuggingManager$Ticker;)V
.registers 10
.param p1, "context" # Landroid/content/Context;
.param p2, "confirmComponent" # Ljava/lang/String;
.param p3, "testUserKeyFile" # Ljava/io/File;
.param p4, "tempKeysFile" # Ljava/io/File;
.param p5, "adbDebuggingThread" # Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
.param p6, "ticker" # Lcom/android/server/adb/AdbDebuggingManager$Ticker;
.line 187
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 142
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbUsbEnabled:Z
.line 143
iput-boolean v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
.line 146
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConnectedKeys:Ljava/util/Map;
.line 156
const/4 v0, 0x0
iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPairingThread:Lcom/android/server/adb/AdbDebuggingManager$PairingThread;
.line 158
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mWifiConnectedKeys:Ljava/util/Set;
.line 160
new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
invoke-direct {v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;-><init>()V
iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
.line 163
new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
invoke-direct {v0, p0}, Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;-><init>(Lcom/android/server/adb/AdbDebuggingManager;)V
iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mPortListener:Lcom/android/server/adb/AdbDebuggingManager$PortListenerImpl;
.line 188
iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
.line 189
invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v0
iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContentResolver:Landroid/content/ContentResolver;
.line 190
iput-object p2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConfirmComponent:Ljava/lang/String;
.line 191
iput-object p3, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
.line 192
iput-object p4, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
.line 193
iput-object p5, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
.line 194
iput-object p6, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTicker:Lcom/android/server/adb/AdbDebuggingManager$Ticker;
.line 195
new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
invoke-static {}, Lcom/android/server/FgThread;->get()Lcom/android/server/FgThread;
move-result-object v1
invoke-virtual {v1}, Lcom/android/server/FgThread;->getLooper()Landroid/os/Looper;
move-result-object v1
iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
invoke-direct {v0, p0, v1, v2}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;-><init>(Lcom/android/server/adb/AdbDebuggingManager;Landroid/os/Looper;Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;)V
iput-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
.line 196
return-void
.end method
.method private createConfirmationIntent(Landroid/content/ComponentName;Ljava/util/List;)Landroid/content/Intent;
.registers 8
.param p1, "componentName" # Landroid/content/ComponentName;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/ComponentName;",
"Ljava/util/List<",
"Ljava/util/Map$Entry<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;>;)",
"Landroid/content/Intent;"
}
.end annotation
.line 1563
.local p2, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
new-instance v0, Landroid/content/Intent;
invoke-direct {v0}, Landroid/content/Intent;-><init>()V
.line 1564
.local v0, "intent":Landroid/content/Intent;
invoke-virtual {p1}, Landroid/content/ComponentName;->getPackageName()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1}, Landroid/content/ComponentName;->getClassName()Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 1565
invoke-interface {p2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_14
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_30
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/util/Map$Entry;
.line 1566
.local v2, "entry":Ljava/util/Map$Entry;, "Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;"
invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v4
check-cast v4, Ljava/lang/String;
invoke-virtual {v0, v3, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 1567
.end local v2 # "entry":Ljava/util/Map$Entry;, "Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;"
goto :goto_14
.line 1568
:cond_30
return-object v0
.end method
.method private getAdbConnectionInfo()Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
.registers 4
.line 626
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
monitor-enter v0
.line 627
:try_start_3
new-instance v1, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
invoke-direct {v1, v2}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;-><init>(Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
monitor-exit v0
return-object v1
.line 628
:catchall_c
move-exception v1
monitor-exit v0
:try_end_e
.catchall {:try_start_3 .. :try_end_e} :catchall_c
throw v1
.end method
.method private static getAdbFile(Ljava/lang/String;)Ljava/io/File;
.registers 5
.param p0, "fileName" # Ljava/lang/String;
.line 1575
invoke-static {}, Landroid/os/Environment;->getDataDirectory()Ljava/io/File;
move-result-object v0
.line 1576
.local v0, "dataDir":Ljava/io/File;
new-instance v1, Ljava/io/File;
const-string/jumbo v2, "misc/adb"
invoke-direct {v1, v0, v2}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
.line 1578
.local v1, "adbDir":Ljava/io/File;
invoke-virtual {v1}, Ljava/io/File;->exists()Z
move-result v2
if-nez v2, :cond_1b
.line 1579
sget-object v2, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
const-string v3, "ADB data directory does not exist"
invoke-static {v2, v3}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 1580
const/4 v2, 0x0
return-object v2
.line 1583
:cond_1b
new-instance v2, Ljava/io/File;
invoke-direct {v2, v1, p0}, Ljava/io/File;-><init>(Ljava/io/File;Ljava/lang/String;)V
return-object v2
.end method
.method private getFingerprints(Ljava/lang/String;)Ljava/lang/String;
.registers 10
.param p1, "key" # Ljava/lang/String;
.line 1448
const-string v0, "0123456789ABCDEF"
.line 1449
.local v0, "hex":Ljava/lang/String;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
.line 1452
.local v1, "sb":Ljava/lang/StringBuilder;
const-string v2, ""
if-nez p1, :cond_c
.line 1453
return-object v2
.line 1457
:cond_c
:try_start_c
const-string v3, "MD5"
invoke-static {v3}, Ljava/security/MessageDigest;->getInstance(Ljava/lang/String;)Ljava/security/MessageDigest;
move-result-object v3
:try_end_12
.catch Ljava/lang/Exception; {:try_start_c .. :try_end_12} :catch_60
.line 1461
.local v3, "digester":Ljava/security/MessageDigest;
nop
.line 1463
const-string v4, "\\s+"
invoke-virtual {p1, v4}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
move-result-object v4
const/4 v5, 0x0
aget-object v4, v4, v5
invoke-virtual {v4}, Ljava/lang/String;->getBytes()[B
move-result-object v4
.line 1466
.local v4, "base64_data":[B
:try_start_20
invoke-static {v4, v5}, Landroid/util/Base64;->decode([BI)[B
move-result-object v5
invoke-virtual {v3, v5}, Ljava/security/MessageDigest;->digest([B)[B
move-result-object v2
:try_end_28
.catch Ljava/lang/IllegalArgumentException; {:try_start_20 .. :try_end_28} :catch_57
.line 1470
.local v2, "digest":[B
nop
.line 1471
const/4 v5, 0x0
.local v5, "i":I
:goto_2a
array-length v6, v2
if-ge v5, v6, :cond_52
.line 1472
aget-byte v6, v2, v5
shr-int/lit8 v6, v6, 0x4
and-int/lit8 v6, v6, 0xf
invoke-virtual {v0, v6}, Ljava/lang/String;->charAt(I)C
move-result v6
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 1473
aget-byte v6, v2, v5
and-int/lit8 v6, v6, 0xf
invoke-virtual {v0, v6}, Ljava/lang/String;->charAt(I)C
move-result v6
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 1474
array-length v6, v2
add-int/lit8 v6, v6, -0x1
if-ge v5, v6, :cond_4f
.line 1475
const-string v6, ":"
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 1471
:cond_4f
add-int/lit8 v5, v5, 0x1
goto :goto_2a
.line 1478
.end local v5 # "i":I
:cond_52
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
return-object v5
.line 1467
.end local v2 # "digest":[B
:catch_57
move-exception v5
.line 1468
.local v5, "e":Ljava/lang/IllegalArgumentException;
sget-object v6, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
const-string v7, "error doing base64 decoding"
invoke-static {v6, v7, v5}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 1469
return-object v2
.line 1458
.end local v3 # "digester":Ljava/security/MessageDigest;
.end local v4 # "base64_data":[B
.end local v5 # "e":Ljava/lang/IllegalArgumentException;
:catch_60
move-exception v3
.line 1459
.local v3, "ex":Ljava/lang/Exception;
sget-object v4, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
const-string v5, "Error getting digester"
invoke-static {v4, v5, v3}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 1460
return-object v2
.end method
.method static synthetic lambda$static$0()J
.registers 2
.line 136
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
return-wide v0
.end method
.method static sendBroadcastWithDebugPermission(Landroid/content/Context;Landroid/content/Intent;Landroid/os/UserHandle;)V
.registers 4
.param p0, "context" # Landroid/content/Context;
.param p1, "intent" # Landroid/content/Intent;
.param p2, "userHandle" # Landroid/os/UserHandle;
.line 200
const-string v0, "android.permission.MANAGE_DEBUGGING"
invoke-virtual {p0, p1, p2, v0}, Landroid/content/Context;->sendBroadcastAsUser(Landroid/content/Intent;Landroid/os/UserHandle;Ljava/lang/String;)V
.line 202
return-void
.end method
.method private sendPersistKeyStoreMessage()V
.registers 3
.line 1758
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/16 v1, 0x8
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->obtainMessage(I)Landroid/os/Message;
move-result-object v0
.line 1759
.local v0, "msg":Landroid/os/Message;
iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
.line 1760
return-void
.end method
.method private setAdbConnectionInfo(Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;)V
.registers 4
.param p1, "info" # Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
.line 616
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
monitor-enter v0
.line 617
if-nez p1, :cond_c
.line 618
:try_start_5
iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
invoke-virtual {v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;->clear()V
.line 619
monitor-exit v0
return-void
.line 621
:cond_c
iput-object p1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbConnectionInfo:Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
.line 622
monitor-exit v0
.line 623
return-void
.line 622
:catchall_10
move-exception v1
monitor-exit v0
:try_end_12
.catchall {:try_start_5 .. :try_end_12} :catchall_10
throw v1
.end method
.method private startConfirmationActivity(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
.registers 10
.param p1, "componentName" # Landroid/content/ComponentName;
.param p2, "userHandle" # Landroid/os/UserHandle;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/ComponentName;",
"Landroid/os/UserHandle;",
"Ljava/util/List<",
"Ljava/util/Map$Entry<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;>;)Z"
}
.end annotation
.line 1531
.local p3, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
.line 1532
.local v0, "packageManager":Landroid/content/pm/PackageManager;
invoke-direct {p0, p1, p3}, Lcom/android/server/adb/AdbDebuggingManager;->createConfirmationIntent(Landroid/content/ComponentName;Ljava/util/List;)Landroid/content/Intent;
move-result-object v1
.line 1533
.local v1, "intent":Landroid/content/Intent;
const/high16 v2, 0x10000000
invoke-virtual {v1, v2}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
.line 1534
const/high16 v2, 0x10000
invoke-virtual {v0, v1, v2}, Landroid/content/pm/PackageManager;->resolveActivity(Landroid/content/Intent;I)Landroid/content/pm/ResolveInfo;
move-result-object v2
if-eqz v2, :cond_38
.line 1536
:try_start_17
iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
invoke-virtual {v2, v1, p2}, Landroid/content/Context;->startActivityAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)V
:try_end_1c
.catch Landroid/content/ActivityNotFoundException; {:try_start_17 .. :try_end_1c} :catch_1e
.line 1537
const/4 v2, 0x1
return v2
.line 1538
:catch_1e
move-exception v2
.line 1539
.local v2, "e":Landroid/content/ActivityNotFoundException;
sget-object v3, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v5, "unable to start adb whitelist activity: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-static {v3, v4, v2}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 1542
.end local v2 # "e":Landroid/content/ActivityNotFoundException;
:cond_38
const/4 v2, 0x0
return v2
.end method
.method private startConfirmationForKey(Ljava/lang/String;Ljava/lang/String;)V
.registers 11
.param p1, "key" # Ljava/lang/String;
.param p2, "fingerprints" # Ljava/lang/String;
.line 1500
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
.line 1501
.local v0, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
const-string/jumbo v2, "key"
invoke-direct {v1, v2, p1}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 1502
new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
const-string v2, "fingerprints"
invoke-direct {v1, v2, p2}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 1503
invoke-static {}, Landroid/app/ActivityManager;->getCurrentUser()I
move-result v1
.line 1504
.local v1, "currentUserId":I
iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
invoke-static {v2}, Landroid/os/UserManager;->get(Landroid/content/Context;)Landroid/os/UserManager;
move-result-object v2
invoke-virtual {v2, v1}, Landroid/os/UserManager;->getUserInfo(I)Landroid/content/pm/UserInfo;
move-result-object v2
.line 1506
.local v2, "userInfo":Landroid/content/pm/UserInfo;
invoke-virtual {v2}, Landroid/content/pm/UserInfo;->isAdmin()Z
move-result v3
if-eqz v3, :cond_3f
.line 1507
iget-object v3, p0, Lcom/android/server/adb/AdbDebuggingManager;->mConfirmComponent:Ljava/lang/String;
if-eqz v3, :cond_33
.line 1508
goto :goto_3e
:cond_33
invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
move-result-object v3
const v4, 0x1040221
invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
move-result-object v3
.local v3, "componentString":Ljava/lang/String;
:goto_3e
goto :goto_4a
.line 1513
.end local v3 # "componentString":Ljava/lang/String;
:cond_3f
invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
move-result-object v3
const v4, 0x1040222
invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
move-result-object v3
.line 1516
.restart local v3 # "componentString":Ljava/lang/String;
:goto_4a
invoke-static {v3}, Landroid/content/ComponentName;->unflattenFromString(Ljava/lang/String;)Landroid/content/ComponentName;
move-result-object v4
.line 1517
.local v4, "componentName":Landroid/content/ComponentName;
invoke-virtual {v2}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
move-result-object v5
invoke-direct {p0, v4, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationActivity(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
move-result v5
if-nez v5, :cond_83
.line 1518
invoke-virtual {v2}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
move-result-object v5
invoke-direct {p0, v4, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationService(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
move-result v5
if-eqz v5, :cond_63
goto :goto_83
.line 1522
:cond_63
sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v7, "unable to start customAdbPublicKeyConfirmation[SecondaryUser]Component "
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v7, " as an Activity or a Service"
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v6
invoke-static {v5, v6}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 1524
return-void
.line 1520
:cond_83
:goto_83
return-void
.end method
.method private startConfirmationForNetwork(Ljava/lang/String;Ljava/lang/String;)V
.registers 11
.param p1, "ssid" # Ljava/lang/String;
.param p2, "bssid" # Ljava/lang/String;
.line 1482
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
.line 1483
.local v0, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
const-string/jumbo v2, "ssid"
invoke-direct {v1, v2, p1}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 1484
new-instance v1, Ljava/util/AbstractMap$SimpleEntry;
const-string v2, "bssid"
invoke-direct {v1, v2, p2}, Ljava/util/AbstractMap$SimpleEntry;-><init>(Ljava/lang/Object;Ljava/lang/Object;)V
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 1485
invoke-static {}, Landroid/app/ActivityManager;->getCurrentUser()I
move-result v1
.line 1487
.local v1, "currentUserId":I
invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
move-result-object v2
const v3, 0x1040223
invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
move-result-object v2
.line 1489
.local v2, "componentString":Ljava/lang/String;
invoke-static {v2}, Landroid/content/ComponentName;->unflattenFromString(Ljava/lang/String;)Landroid/content/ComponentName;
move-result-object v3
.line 1490
.local v3, "componentName":Landroid/content/ComponentName;
iget-object v4, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
invoke-static {v4}, Landroid/os/UserManager;->get(Landroid/content/Context;)Landroid/os/UserManager;
move-result-object v4
invoke-virtual {v4, v1}, Landroid/os/UserManager;->getUserInfo(I)Landroid/content/pm/UserInfo;
move-result-object v4
.line 1491
.local v4, "userInfo":Landroid/content/pm/UserInfo;
invoke-virtual {v4}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
move-result-object v5
invoke-direct {p0, v3, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationActivity(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
move-result v5
if-nez v5, :cond_6b
.line 1492
invoke-virtual {v4}, Landroid/content/pm/UserInfo;->getUserHandle()Landroid/os/UserHandle;
move-result-object v5
invoke-direct {p0, v3, v5, v0}, Lcom/android/server/adb/AdbDebuggingManager;->startConfirmationService(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
move-result v5
if-eqz v5, :cond_4c
goto :goto_6b
.line 1495
:cond_4c
sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
const-string v7, "Unable to start customAdbWifiNetworkConfirmation[SecondaryUser]Component "
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
const-string v7, " as an Activity or a Service"
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v6
invoke-static {v5, v6}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 1497
return-void
.line 1493
:cond_6b
:goto_6b
return-void
.end method
.method private startConfirmationService(Landroid/content/ComponentName;Landroid/os/UserHandle;Ljava/util/List;)Z
.registers 9
.param p1, "componentName" # Landroid/content/ComponentName;
.param p2, "userHandle" # Landroid/os/UserHandle;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/content/ComponentName;",
"Landroid/os/UserHandle;",
"Ljava/util/List<",
"Ljava/util/Map$Entry<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;>;)Z"
}
.end annotation
.line 1550
.local p3, "extras":Ljava/util/List;, "Ljava/util/List<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;"
invoke-direct {p0, p1, p3}, Lcom/android/server/adb/AdbDebuggingManager;->createConfirmationIntent(Landroid/content/ComponentName;Ljava/util/List;)Landroid/content/Intent;
move-result-object v0
.line 1552
.local v0, "intent":Landroid/content/Intent;
:try_start_4
iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mContext:Landroid/content/Context;
invoke-virtual {v1, v0, p2}, Landroid/content/Context;->startServiceAsUser(Landroid/content/Intent;Landroid/os/UserHandle;)Landroid/content/ComponentName;
move-result-object v1
:try_end_a
.catch Ljava/lang/SecurityException; {:try_start_4 .. :try_end_a} :catch_f
if-eqz v1, :cond_e
.line 1553
const/4 v1, 0x1
return v1
.line 1557
:cond_e
goto :goto_29
.line 1555
:catch_f
move-exception v1
.line 1556
.local v1, "e":Ljava/lang/SecurityException;
sget-object v2, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v4, "unable to start adb whitelist service: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v2, v3, v1}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 1558
.end local v1 # "e":Ljava/lang/SecurityException;
:goto_29
const/4 v1, 0x0
return v1
.end method
.method private writeKeys(Ljava/lang/Iterable;)V
.registers 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Iterable<",
"Ljava/lang/String;",
">;)V"
}
.end annotation
.line 1595
.local p1, "keys":Ljava/lang/Iterable;, "Ljava/lang/Iterable<Ljava/lang/String;>;"
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
if-nez v0, :cond_5
.line 1596
return-void
.line 1599
:cond_5
new-instance v0, Landroid/util/AtomicFile;
iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
invoke-direct {v0, v1}, Landroid/util/AtomicFile;-><init>(Ljava/io/File;)V
.line 1602
.local v0, "atomicKeyFile":Landroid/util/AtomicFile;
const/4 v1, 0x0
.line 1604
.local v1, "fo":Ljava/io/FileOutputStream;
:try_start_d
invoke-virtual {v0}, Landroid/util/AtomicFile;->startWrite()Ljava/io/FileOutputStream;
move-result-object v2
move-object v1, v2
.line 1605
invoke-interface {p1}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_16
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_2f
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
.line 1606
.local v3, "key":Ljava/lang/String;
invoke-virtual {v3}, Ljava/lang/String;->getBytes()[B
move-result-object v4
invoke-virtual {v1, v4}, Ljava/io/FileOutputStream;->write([B)V
.line 1607
const/16 v4, 0xa
invoke-virtual {v1, v4}, Ljava/io/FileOutputStream;->write(I)V
.line 1608
.end local v3 # "key":Ljava/lang/String;
goto :goto_16
.line 1609
:cond_2f
invoke-virtual {v0, v1}, Landroid/util/AtomicFile;->finishWrite(Ljava/io/FileOutputStream;)V
:try_end_32
.catch Ljava/io/IOException; {:try_start_d .. :try_end_32} :catch_40
.line 1614
nop
.line 1616
iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
.line 1617
invoke-virtual {v2}, Ljava/io/File;->toString()Ljava/lang/String;
move-result-object v2
const/16 v3, 0x1a0
.line 1616
const/4 v4, -0x1
invoke-static {v2, v3, v4, v4}, Landroid/os/FileUtils;->setPermissions(Ljava/lang/String;III)I
.line 1619
return-void
.line 1610
:catch_40
move-exception v2
.line 1611
.local v2, "ex":Ljava/io/IOException;
sget-object v3, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "Error writing keys: "
invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
invoke-static {v3, v4}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 1612
invoke-virtual {v0, v1}, Landroid/util/AtomicFile;->failWrite(Ljava/io/FileOutputStream;)V
.line 1613
return-void
.end method
# virtual methods
.method public allowDebugging(ZLjava/lang/String;)V
.registers 5
.param p1, "alwaysAllow" # Z
.param p2, "publicKey" # Ljava/lang/String;
.line 1645
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/4 v1, 0x3
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->obtainMessage(I)Landroid/os/Message;
move-result-object v0
.line 1646
.local v0, "msg":Landroid/os/Message;
iput p1, v0, Landroid/os/Message;->arg1:I
.line 1647
iput-object p2, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
.line 1648
iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
.line 1649
return-void
.end method
.method public allowWirelessDebugging(ZLjava/lang/String;)V
.registers 5
.param p1, "alwaysAllow" # Z
.param p2, "bssid" # Ljava/lang/String;
.line 1671
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/16 v1, 0x12
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->obtainMessage(I)Landroid/os/Message;
move-result-object v0
.line 1672
.local v0, "msg":Landroid/os/Message;
iput p1, v0, Landroid/os/Message;->arg1:I
.line 1673
iput-object p2, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
.line 1674
iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
.line 1675
return-void
.end method
.method public clearDebuggingKeys()V
.registers 3
.line 1663
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/4 v1, 0x6
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
.line 1664
return-void
.end method
.method public denyDebugging()V
.registers 3
.line 1655
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/4 v1, 0x4
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
.line 1656
return-void
.end method
.method public denyWirelessDebugging()V
.registers 3
.line 1681
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/16 v1, 0x13
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
.line 1682
return-void
.end method
.method public disablePairing()V
.registers 3
.line 1737
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/16 v1, 0xe
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
.line 1738
return-void
.end method
.method public dump(Lcom/android/internal/util/dump/DualDumpOutputStream;Ljava/lang/String;J)V
.registers 14
.param p1, "dump" # Lcom/android/internal/util/dump/DualDumpOutputStream;
.param p2, "idName" # Ljava/lang/String;
.param p3, "id" # J
.line 1766
invoke-virtual {p1, p2, p3, p4}, Lcom/android/internal/util/dump/DualDumpOutputStream;->start(Ljava/lang/String;J)J
move-result-wide v0
.line 1768
.local v0, "token":J
iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mThread:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingThread;
const/4 v3, 0x0
if-eqz v2, :cond_b
const/4 v2, 0x1
goto :goto_c
:cond_b
move v2, v3
:goto_c
const-string v4, "connected_to_adb"
const-wide v5, 0x10800000001L
invoke-virtual {p1, v4, v5, v6, v2}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JZ)V
.line 1769
const-wide v4, 0x10900000002L
iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mFingerprints:Ljava/lang/String;
const-string/jumbo v6, "last_key_received"
invoke-static {p1, v6, v4, v5, v2}, Lcom/android/internal/util/dump/DumpUtils;->writeStringIfNotNull(Lcom/android/internal/util/dump/DualDumpOutputStream;Ljava/lang/String;JLjava/lang/String;)V
.line 1773
const/4 v2, 0x0
:try_start_24
const-string/jumbo v4, "user_keys"
const-wide v5, 0x10900000003L
new-instance v7, Ljava/io/File;
const-string v8, "/data/misc/adb/adb_keys"
invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 1774
invoke-static {v7, v3, v2}, Landroid/os/FileUtils;->readTextFile(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
move-result-object v7
.line 1773
invoke-virtual {p1, v4, v5, v6, v7}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JLjava/lang/String;)V
:try_end_3a
.catch Ljava/io/IOException; {:try_start_24 .. :try_end_3a} :catch_3b
.line 1777
goto :goto_43
.line 1775
:catch_3b
move-exception v4
.line 1776
.local v4, "e":Ljava/io/IOException;
sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
const-string v6, "Cannot read user keys"
invoke-static {v5, v6, v4}, Landroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 1780
.end local v4 # "e":Ljava/io/IOException;
:goto_43
:try_start_43
const-string/jumbo v4, "system_keys"
const-wide v5, 0x10900000004L
new-instance v7, Ljava/io/File;
const-string v8, "/adb_keys"
invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
.line 1781
invoke-static {v7, v3, v2}, Landroid/os/FileUtils;->readTextFile(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
move-result-object v7
.line 1780
invoke-virtual {p1, v4, v5, v6, v7}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JLjava/lang/String;)V
:try_end_59
.catch Ljava/io/IOException; {:try_start_43 .. :try_end_59} :catch_5a
.line 1784
goto :goto_62
.line 1782
:catch_5a
move-exception v4
.line 1783
.restart local v4 # "e":Ljava/io/IOException;
sget-object v5, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
const-string v6, "Cannot read system keys"
invoke-static {v5, v6, v4}, Landroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 1787
.end local v4 # "e":Ljava/io/IOException;
:goto_62
:try_start_62
const-string/jumbo v4, "keystore"
const-wide v5, 0x10900000005L
iget-object v7, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
.line 1788
invoke-static {v7, v3, v2}, Landroid/os/FileUtils;->readTextFile(Ljava/io/File;ILjava/lang/String;)Ljava/lang/String;
move-result-object v2
.line 1787
invoke-virtual {p1, v4, v5, v6, v2}, Lcom/android/internal/util/dump/DualDumpOutputStream;->write(Ljava/lang/String;JLjava/lang/String;)V
:try_end_73
.catch Ljava/io/IOException; {:try_start_62 .. :try_end_73} :catch_74
.line 1791
goto :goto_7c
.line 1789
:catch_74
move-exception v2
.line 1790
.local v2, "e":Ljava/io/IOException;
sget-object v3, Lcom/android/server/adb/AdbDebuggingManager;->TAG:Ljava/lang/String;
const-string v4, "Cannot read keystore: "
invoke-static {v3, v4, v2}, Landroid/util/Slog;->i(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 1793
.end local v2 # "e":Ljava/io/IOException;
:goto_7c
invoke-virtual {p1, v0, v1}, Lcom/android/internal/util/dump/DualDumpOutputStream;->end(J)V
.line 1794
return-void
.end method
.method public enablePairingByPairingCode()V
.registers 3
.line 1717
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/16 v1, 0xf
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
.line 1718
return-void
.end method
.method public enablePairingByQrCode(Ljava/lang/String;Ljava/lang/String;)V
.registers 6
.param p1, "serviceName" # Ljava/lang/String;
.param p2, "password" # Ljava/lang/String;
.line 1724
new-instance v0, Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
.line 1725
.local v0, "bundle":Landroid/os/Bundle;
const-string/jumbo v1, "serviceName"
invoke-virtual {v0, v1, p1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
.line 1726
const-string/jumbo v1, "password"
invoke-virtual {v0, v1, p2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
.line 1727
iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/16 v2, 0x10
invoke-static {v1, v2, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;ILjava/lang/Object;)Landroid/os/Message;
move-result-object v1
.line 1730
.local v1, "message":Landroid/os/Message;
iget-object v2, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
invoke-virtual {v2, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
.line 1731
return-void
.end method
.method getAdbTempKeysFile()Ljava/io/File;
.registers 2
.line 1587
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mTempKeysFile:Ljava/io/File;
return-object v0
.end method
.method public getAdbWirelessPort()I
.registers 3
.line 1688
invoke-direct {p0}, Lcom/android/server/adb/AdbDebuggingManager;->getAdbConnectionInfo()Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
move-result-object v0
.line 1689
.local v0, "info":Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;
if-nez v0, :cond_8
.line 1690
const/4 v1, 0x0
return v1
.line 1692
:cond_8
invoke-virtual {v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbConnectionInfo;->getPort()I
move-result v1
return v1
.end method
.method public getPairedDevices()Ljava/util/Map;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Landroid/debug/PairDevice;",
">;"
}
.end annotation
.line 1699
new-instance v0, Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;
invoke-direct {v0, p0}, Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;-><init>(Lcom/android/server/adb/AdbDebuggingManager;)V
.line 1700
.local v0, "keystore":Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;
invoke-virtual {v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbKeyStore;->getPairedDevices()Ljava/util/Map;
move-result-object v1
return-object v1
.end method
.method getUserKeyFile()Ljava/io/File;
.registers 2
.line 1591
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mUserKeyFile:Ljava/io/File;
return-object v0
.end method
.method public isAdbWifiEnabled()Z
.registers 2
.line 1744
iget-boolean v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mAdbWifiEnabled:Z
return v0
.end method
.method public notifyKeyFilesUpdated()V
.registers 3
.line 1751
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/16 v1, 0x1c
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
.line 1752
return-void
.end method
.method public setAdbEnabled(ZB)V
.registers 6
.param p1, "enabled" # Z
.param p2, "transportType" # B
.line 1628
const/4 v0, 0x1
if-nez p2, :cond_d
.line 1629
iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
if-eqz p1, :cond_8
goto :goto_9
.line 1630
:cond_8
const/4 v0, 0x2
.line 1629
:goto_9
invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
goto :goto_1b
.line 1631
:cond_d
if-ne p2, v0, :cond_1c
.line 1632
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
if-eqz p1, :cond_16
const/16 v1, 0xb
goto :goto_18
.line 1633
:cond_16
const/16 v1, 0xc
.line 1632
:goto_18
invoke-virtual {v0, v1}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendEmptyMessage(I)Z
.line 1638
:goto_1b
return-void
.line 1635
:cond_1c
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v2, "setAdbEnabled called with unimplemented transport type="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public unpairDevice(Ljava/lang/String;)V
.registers 4
.param p1, "fingerprint" # Ljava/lang/String;
.line 1707
iget-object v0, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
const/16 v1, 0x11
invoke-static {v0, v1, p1}, Landroid/os/Message;->obtain(Landroid/os/Handler;ILjava/lang/Object;)Landroid/os/Message;
move-result-object v0
.line 1710
.local v0, "message":Landroid/os/Message;
iget-object v1, p0, Lcom/android/server/adb/AdbDebuggingManager;->mHandler:Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;
invoke-virtual {v1, v0}, Lcom/android/server/adb/AdbDebuggingManager$AdbDebuggingHandler;->sendMessage(Landroid/os/Message;)Z
.line 1711
return-void
.end method
גימיני טוען שזה הסמיילי לעריכה אבל ממש הסתבכתי עם העריכה וכל זה כי אני לא מבין בזה ממש זה הכניס לי לבוטלופ את המכשיר.
אם מישהו יכול לעזור לי אשמח מאד.
המכשיר הוא m393.
מעלה את הסרויס ג'אר הערוך למניעת הבאג של 3 אפליקציות נערך על ידי @עדלאידע .
services (3).jar
יצויין שהוא נבדק ותקין רק שיש בו את הבעיה של ה adb.
Spoiler
סליחה אם תייגתי מישהו שלא מעוניין בכך.