arw.smali
.class public Ldxoptimizer/arw;
.super Ljava/lang/Object;
.source "AccessibilityServiceManager.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Ldxoptimizer/arw$c;,
Ldxoptimizer/arw$b;,
Ldxoptimizer/arw$a;
}
.end annotation
# static fields
.field private static c:Ldxoptimizer/arw;
# instance fields
.field private a:Ldxoptimizer/arx;
.field private b:Landroid/accessibilityservice/AccessibilityService;
.field private d:Ldxoptimizer/arw$b;
.field private e:Ldxoptimizer/arw$c;
.field private f:Ldxoptimizer/cbr$a;
.field private g:Ldxoptimizer/arw$a;
# direct methods
.method private constructor <init>()V
.registers 2
.prologue
.line 81
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 53
new-instance v0, Ldxoptimizer/arw$1;
invoke-direct {v0, p0}, Ldxoptimizer/arw$1;-><init>(Ldxoptimizer/arw;)V
iput-object v0, p0, Ldxoptimizer/arw;->f:Ldxoptimizer/cbr$a;
.line 82
return-void
.end method
.method public static a()Ldxoptimizer/arw;
.registers 2
.prologue
.line 85
sget-object v0, Ldxoptimizer/arw;->c:Ldxoptimizer/arw;
if-nez v0, :cond_13
.line 86
const-class v1, Ldxoptimizer/arw;
monitor-enter v1
.line 87
:try_start_7
sget-object v0, Ldxoptimizer/arw;->c:Ldxoptimizer/arw;
if-nez v0, :cond_12
.line 88
new-instance v0, Ldxoptimizer/arw;
invoke-direct {v0}, Ldxoptimizer/arw;-><init>()V
sput-object v0, Ldxoptimizer/arw;->c:Ldxoptimizer/arw;
.line 90
:cond_12
monitor-exit v1
:try_end_13
.catchall {:try_start_7 .. :try_end_13} :catchall_16
.line 92
:cond_13
sget-object v0, Ldxoptimizer/arw;->c:Ldxoptimizer/arw;
return-object v0
.line 90
:catchall_16
move-exception v0
:try_start_17
monitor-exit v1
:try_end_18
.catchall {:try_start_17 .. :try_end_18} :catchall_16
throw v0
.end method
.method static synthetic a(Ldxoptimizer/arw;)Ldxoptimizer/arx;
.registers 2
.prologue
.line 35
iget-object v0, p0, Ldxoptimizer/arw;->a:Ldxoptimizer/arx;
return-object v0
.end method
.method private a(Landroid/accessibilityservice/AccessibilityServiceInfo;)V
.registers 7
.annotation build Landroid/annotation/TargetApi;
value = 0x10
.end annotation
.prologue
.line 248
iget-object v0, p0, Ldxoptimizer/arw;->b:Landroid/accessibilityservice/AccessibilityService;
if-eqz v0, :cond_4f
if-eqz p1, :cond_4f
.line 249
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x10
if-lt v0, v1, :cond_4f
.line 250
iget-object v0, p0, Ldxoptimizer/arw;->b:Landroid/accessibilityservice/AccessibilityService;
invoke-virtual {v0}, Landroid/accessibilityservice/AccessibilityService;->getServiceInfo()Landroid/accessibilityservice/AccessibilityServiceInfo;
move-result-object v1
.line 251
if-eqz v1, :cond_4f
.line 253
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
.line 254
iget v2, v1, Landroid/accessibilityservice/AccessibilityServiceInfo;->eventTypes:I
iget v3, p1, Landroid/accessibilityservice/AccessibilityServiceInfo;->eventTypes:I
or-int/2addr v2, v3
iput v2, v1, Landroid/accessibilityservice/AccessibilityServiceInfo;->eventTypes:I
.line 257
iget-object v2, v1, Landroid/accessibilityservice/AccessibilityServiceInfo;->packageNames:[Ljava/lang/String;
.line 258
iget-object v3, p1, Landroid/accessibilityservice/AccessibilityServiceInfo;->packageNames:[Ljava/lang/String;
.line 259
if-eqz v2, :cond_30
array-length v4, v2
if-lez v4, :cond_30
.line 260
invoke-static {v2}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/util/HashSet;->addAll(Ljava/util/Collection;)Z
.line 262
:cond_30
if-eqz v3, :cond_3c
array-length v2, v3
if-lez v2, :cond_3c
.line 263
invoke-static {v3}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/util/HashSet;->addAll(Ljava/util/Collection;)Z
.line 265
:cond_3c
invoke-virtual {v0}, Ljava/util/HashSet;->size()I
move-result v2
new-array v2, v2, [Ljava/lang/String;
invoke-virtual {v0, v2}, Ljava/util/HashSet;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object v0
check-cast v0, [Ljava/lang/String;
iput-object v0, v1, Landroid/accessibilityservice/AccessibilityServiceInfo;->packageNames:[Ljava/lang/String;
.line 266
iget-object v0, p0, Ldxoptimizer/arw;->b:Landroid/accessibilityservice/AccessibilityService;
invoke-virtual {v0, v1}, Landroid/accessibilityservice/AccessibilityService;->setServiceInfo(Landroid/accessibilityservice/AccessibilityServiceInfo;)V
.line 270
:cond_4f
return-void
.end method
.method public static a(Ljava/lang/String;)V
.registers 2
.prologue
.line 373
invoke-static {p0}, Lcom/dianxinos/optimizer/module/accessibility/core/monitor/CallStateMonitor;->a(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_d
.line 374
invoke-static {}, Ldxoptimizer/arw;->a()Ldxoptimizer/arw;
move-result-object v0
invoke-virtual {v0}, Ldxoptimizer/arw;->c()V
.line 376
:cond_d
return-void
.end method
.method public static a(Landroid/content/Context;)Z
.registers 6
.prologue
const/16 v2, 0x10
const/4 v1, 0x0
.line 342
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
if-ge v0, v2, :cond_9
move v0, v1
.line 369
:goto_8
return v0
.line 345
:cond_9
const-string v0, "accessibility"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/view/accessibility/AccessibilityManager;
.line 346
if-nez v0, :cond_15
move v0, v1
.line 347
goto :goto_8
.line 351
:cond_15
const/16 v2, 0x10
.line 352
:try_start_17
invoke-virtual {v0, v2}, Landroid/view/accessibility/AccessibilityManager;->getEnabledAccessibilityServiceList(I)Ljava/util/List;
:try_end_1a
.catch Ljava/lang/NullPointerException; {:try_start_17 .. :try_end_1a} :catch_49
move-result-object v0
.line 356
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v2
.line 357
if-eqz v0, :cond_4c
.line 358
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_25
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_4c
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/accessibilityservice/AccessibilityServiceInfo;
.line 359
if-eqz v0, :cond_25
.line 360
invoke-virtual {v0}, Landroid/accessibilityservice/AccessibilityServiceInfo;->getResolveInfo()Landroid/content/pm/ResolveInfo;
move-result-object v0
.line 361
if-eqz v0, :cond_25
iget-object v4, v0, Landroid/content/pm/ResolveInfo;->serviceInfo:Landroid/content/pm/ServiceInfo;
if-eqz v4, :cond_25
.line 362
iget-object v0, v0, Landroid/content/pm/ResolveInfo;->serviceInfo:Landroid/content/pm/ServiceInfo;
iget-object v0, v0, Landroid/content/pm/ServiceInfo;->packageName:Ljava/lang/String;
invoke-virtual {v2, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_25
.line 363
const/4 v0, 0x1
goto :goto_8
.line 353
:catch_49
move-exception v0
move v0, v1
.line 354
goto :goto_8
:cond_4c
move v0, v1
.line 369
goto :goto_8
.end method
.method static synthetic b(Ldxoptimizer/arw;)Landroid/accessibilityservice/AccessibilityService;
.registers 2
.prologue
.line 35
iget-object v0, p0, Ldxoptimizer/arw;->b:Landroid/accessibilityservice/AccessibilityService;
return-object v0
.end method
.method private b(Landroid/accessibilityservice/AccessibilityServiceInfo;)V
.registers 2
.prologue
.line 286
return-void
.end method
# virtual methods
.method public a(Landroid/accessibilityservice/AccessibilityService;)V
.registers 6
.annotation build Landroid/annotation/TargetApi;
value = 0x10
.end annotation
.prologue
.line 290
iput-object p1, p0, Ldxoptimizer/arw;->b:Landroid/accessibilityservice/AccessibilityService;
.line 295
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x10
if-lt v0, v1, :cond_1c
.line 296
invoke-virtual {p1}, Landroid/accessibilityservice/AccessibilityService;->getServiceInfo()Landroid/accessibilityservice/AccessibilityServiceInfo;
move-result-object v0
.line 297
if-nez v0, :cond_f
.line 307
:cond_e
:goto_e
return-void
.line 300
:cond_f
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/String;
const/4 v2, 0x0
const-string v3, ""
aput-object v3, v1, v2
iput-object v1, v0, Landroid/accessibilityservice/AccessibilityServiceInfo;->packageNames:[Ljava/lang/String;
.line 301
invoke-virtual {p1, v0}, Landroid/accessibilityservice/AccessibilityService;->setServiceInfo(Landroid/accessibilityservice/AccessibilityServiceInfo;)V
.line 304
:cond_1c
iget-object v0, p0, Ldxoptimizer/arw;->g:Ldxoptimizer/arw$a;
if-eqz v0, :cond_e
.line 305
iget-object v0, p0, Ldxoptimizer/arw;->g:Ldxoptimizer/arw$a;
invoke-interface {v0}, Ldxoptimizer/arw$a;->a()V
goto :goto_e
.end method
.method public a(Landroid/view/accessibility/AccessibilityEvent;)V
.registers 4
.prologue
const/4 v1, 0x0
.line 316
iget-object v0, p0, Ldxoptimizer/arw;->d:Ldxoptimizer/arw$b;
if-eqz v0, :cond_18
.line 318
iget-object v0, p0, Ldxoptimizer/arw;->d:Ldxoptimizer/arw$b;
invoke-virtual {v0}, Ldxoptimizer/arw$b;->cancel()Z
.line 319
iput-object v1, p0, Ldxoptimizer/arw;->d:Ldxoptimizer/arw$b;
.line 326
new-instance v0, Ldxoptimizer/arw$c;
invoke-direct {v0, p0, v1}, Ldxoptimizer/arw$c;-><init>(Ldxoptimizer/arw;Ldxoptimizer/arw$1;)V
iput-object v0, p0, Ldxoptimizer/arw;->e:Ldxoptimizer/arw$c;
.line 327
iget-object v0, p0, Ldxoptimizer/arw;->e:Ldxoptimizer/arw$c;
invoke-virtual {v0}, Ldxoptimizer/arw$c;->a()V
.line 329
:cond_18
iget-object v0, p0, Ldxoptimizer/arw;->a:Ldxoptimizer/arx;
if-eqz v0, :cond_21
.line 330
iget-object v0, p0, Ldxoptimizer/arw;->a:Ldxoptimizer/arx;
invoke-virtual {v0, p1}, Ldxoptimizer/arx;->a(Landroid/view/accessibility/AccessibilityEvent;)V
.line 332
:cond_21
return-void
.end method
.method public a(Ldxoptimizer/arw$a;)V
.registers 2
.prologue
.line 335
iput-object p1, p0, Ldxoptimizer/arw;->g:Ldxoptimizer/arw$a;
.line 336
return-void
.end method
.method public a(Ldxoptimizer/arx;)V
.registers 4
.prologue
.line 205
if-nez p1, :cond_3
.line 222
:cond_2
:goto_2
return-void
.line 208
:cond_3
invoke-virtual {p0}, Ldxoptimizer/arw;->b()Z
move-result v0
if-nez v0, :cond_2
.line 213
invoke-static {}, Ldxoptimizer/cbr;->a()Ldxoptimizer/cbr;
move-result-object v0
iget-object v1, p0, Ldxoptimizer/arw;->f:Ldxoptimizer/cbr$a;
invoke-virtual {v0, v1}, Ldxoptimizer/cbr;->a(Ldxoptimizer/cbr$a;)V
.line 215
iput-object p1, p0, Ldxoptimizer/arw;->a:Ldxoptimizer/arx;
.line 216
invoke-virtual {p1}, Ldxoptimizer/arx;->b()Landroid/accessibilityservice/AccessibilityServiceInfo;
move-result-object v0
invoke-direct {p0, v0}, Ldxoptimizer/arw;->a(Landroid/accessibilityservice/AccessibilityServiceInfo;)V
.line 217
invoke-virtual {p1}, Ldxoptimizer/arx;->c()V
.line 220
new-instance v0, Ldxoptimizer/arw$b;
invoke-direct {v0}, Ldxoptimizer/arw$b;-><init>()V
iput-object v0, p0, Ldxoptimizer/arw;->d:Ldxoptimizer/arw$b;
.line 221
iget-object v0, p0, Ldxoptimizer/arw;->d:Ldxoptimizer/arw$b;
invoke-virtual {v0}, Ldxoptimizer/arw$b;->a()V
goto :goto_2
.end method
.method public b()Z
.registers 2
.prologue
.line 96
iget-object v0, p0, Ldxoptimizer/arw;->a:Ldxoptimizer/arx;
if-eqz v0, :cond_6
const/4 v0, 0x1
:goto_5
return v0
:cond_6
const/4 v0, 0x0
goto :goto_5
.end method
.method public c()V
.registers 3
.prologue
const/4 v1, 0x0
.line 225
invoke-virtual {p0}, Ldxoptimizer/arw;->b()Z
move-result v0
if-nez v0, :cond_8
.line 244
:goto_7
return-void
.line 229
:cond_8
iget-object v0, p0, Ldxoptimizer/arw;->a:Ldxoptimizer/arx;
invoke-virtual {v0}, Ldxoptimizer/arx;->b()Landroid/accessibilityservice/AccessibilityServiceInfo;
move-result-object v0
invoke-direct {p0, v0}, Ldxoptimizer/arw;->b(Landroid/accessibilityservice/AccessibilityServiceInfo;)V
.line 230
iget-object v0, p0, Ldxoptimizer/arw;->a:Ldxoptimizer/arx;
invoke-virtual {v0}, Ldxoptimizer/arx;->d()V
.line 231
iput-object v1, p0, Ldxoptimizer/arw;->a:Ldxoptimizer/arx;
.line 233
iget-object v0, p0, Ldxoptimizer/arw;->d:Ldxoptimizer/arw$b;
if-eqz v0, :cond_23
.line 234
iget-object v0, p0, Ldxoptimizer/arw;->d:Ldxoptimizer/arw$b;
invoke-virtual {v0}, Ldxoptimizer/arw$b;->cancel()Z
.line 235
iput-object v1, p0, Ldxoptimizer/arw;->d:Ldxoptimizer/arw$b;
.line 237
:cond_23
iget-object v0, p0, Ldxoptimizer/arw;->e:Ldxoptimizer/arw$c;
if-eqz v0, :cond_2e
.line 238
iget-object v0, p0, Ldxoptimizer/arw;->e:Ldxoptimizer/arw$c;
invoke-virtual {v0}, Ldxoptimizer/arw$c;->b()V
.line 239
iput-object v1, p0, Ldxoptimizer/arw;->e:Ldxoptimizer/arw$c;
.line 243
:cond_2e
invoke-static {}, Ldxoptimizer/cbr;->a()Ldxoptimizer/cbr;
move-result-object v0
iget-object v1, p0, Ldxoptimizer/arw;->f:Ldxoptimizer/cbr$a;
invoke-virtual {v0, v1}, Ldxoptimizer/cbr;->b(Ldxoptimizer/cbr$a;)V
goto :goto_7
.end method
.method public d()V
.registers 2
.prologue
.line 310
iget-object v0, p0, Ldxoptimizer/arw;->g:Ldxoptimizer/arw$a;
if-eqz v0, :cond_9
.line 311
iget-object v0, p0, Ldxoptimizer/arw;->g:Ldxoptimizer/arw$a;
invoke-interface {v0}, Ldxoptimizer/arw$a;->b()V
.line 313
:cond_9
return-void
.end method