vp.smali
.class public Ldxoptimizer/vp;
.super Ldxoptimizer/csi;
.source "DXCordovaWebViewClient.java"
# instance fields
.field a:Ldxoptimizer/vl;
.field b:Ldxoptimizer/vq;
# direct methods
.method public constructor <init>(Landroid/content/Context;Ldxoptimizer/csj;)V
.registers 4
.prologue
.line 41
invoke-direct {p0, p2}, Ldxoptimizer/csi;-><init>(Ldxoptimizer/csj;)V
.line 42
check-cast p1, Ldxoptimizer/vl;
iput-object p1, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
.line 43
invoke-virtual {p2}, Ldxoptimizer/csj;->h()Ldxoptimizer/cru;
move-result-object v0
check-cast v0, Ldxoptimizer/vq;
iput-object v0, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
.line 44
return-void
.end method
.method private a(Lcom/dianxinos/dxcordova/Action$Code;Ljava/lang/String;)V
.registers 6
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/Exception;
}
.end annotation
.prologue
.line 75
const-string v0, "cordova"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "DXCordovaWebViewClient: handleAction("
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " , "
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(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, ")"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Ldxoptimizer/crz;->a(Ljava/lang/String;Ljava/lang/String;)V
.line 76
sget-object v0, Ldxoptimizer/vp$1;->a:[I
invoke-virtual {p1}, Lcom/dianxinos/dxcordova/Action$Code;->ordinal()I
move-result v1
aget v0, v0, v1
packed-switch v0, :pswitch_data_78
.line 104
:goto_33
:pswitch_33
return-void
.line 78
:pswitch_34
iget-object v0, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-static {p2}, Ldxoptimizer/vo;->a(Ljava/lang/String;)Landroid/content/Intent;
move-result-object v1
invoke-virtual {v0, v1}, Ldxoptimizer/vl;->startActivity(Landroid/content/Intent;)V
goto :goto_33
.line 81
:pswitch_3e
iget-object v0, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-static {p2}, Ldxoptimizer/vo;->a(Ljava/lang/String;)Landroid/content/Intent;
move-result-object v1
invoke-virtual {v0, v1}, Ldxoptimizer/vl;->startService(Landroid/content/Intent;)Landroid/content/ComponentName;
goto :goto_33
.line 84
:pswitch_48
iget-object v0, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-static {p2}, Ldxoptimizer/vo;->a(Ljava/lang/String;)Landroid/content/Intent;
move-result-object v1
invoke-virtual {v0, v1}, Ldxoptimizer/vl;->sendBroadcast(Landroid/content/Intent;)V
goto :goto_33
.line 87
:pswitch_52
iget-object v0, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-virtual {v0}, Ldxoptimizer/vl;->e()Ldxoptimizer/vu;
move-result-object v0
invoke-interface {v0, p2}, Ldxoptimizer/vu;->a(Ljava/lang/String;)V
goto :goto_33
.line 91
:pswitch_5c
const/16 v0, 0x3a
:try_start_5e
invoke-virtual {p2, v0}, Ljava/lang/String;->indexOf(I)I
move-result v0
add-int/lit8 v0, v0, 0x1
invoke-virtual {p2, v0}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
.line 92
iget-object v1, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-virtual {v1, v0}, Ldxoptimizer/vl;->c(I)V
:try_end_71
.catch Ljava/lang/Exception; {:try_start_5e .. :try_end_71} :catch_72
goto :goto_33
.line 93
:catch_72
move-exception v0
.line 94
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
goto :goto_33
.line 76
nop
:pswitch_data_78
.packed-switch 0x1
:pswitch_34
:pswitch_3e
:pswitch_48
:pswitch_52
:pswitch_5c
:pswitch_33
:pswitch_33
.end packed-switch
.end method
.method private static a(Landroid/net/Uri;)Z
.registers 3
.prologue
.line 143
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x13
if-lt v0, v1, :cond_14
const-string v0, "content"
invoke-virtual {p0}, Landroid/net/Uri;->getScheme()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_14
const/4 v0, 0x1
:goto_13
return v0
:cond_14
const/4 v0, 0x0
goto :goto_13
.end method
.method private a(Ljava/lang/String;)Z
.registers 3
.prologue
.line 139
const-string v0, "app_webview"
invoke-virtual {p1, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
return v0
.end method
.method private b(Ljava/lang/String;)Ljava/lang/String;
.registers 8
.prologue
.line 167
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
.line 170
const/16 v0, 0x400
:try_start_7
new-array v0, v0, [C
.line 171
new-instance v2, Ljava/io/InputStreamReader;
iget-object v3, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-virtual {v3}, Ldxoptimizer/vl;->getAssets()Landroid/content/res/AssetManager;
move-result-object v3
invoke-virtual {v3, p1}, Landroid/content/res/AssetManager;->open(Ljava/lang/String;)Ljava/io/InputStream;
move-result-object v3
invoke-direct {v2, v3}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
.line 172
new-instance v3, Ljava/io/BufferedReader;
invoke-direct {v3, v2}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
.line 173
:goto_1d
invoke-virtual {v3, v0}, Ljava/io/BufferedReader;->read([C)I
move-result v4
if-lez v4, :cond_31
.line 174
const/4 v5, 0x0
invoke-virtual {v1, v0, v5, v4}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
:try_end_27
.catch Ljava/io/IOException; {:try_start_7 .. :try_end_27} :catch_28
goto :goto_1d
.line 178
:catch_28
move-exception v0
.line 179
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
.line 181
:goto_2c
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.line 176
:cond_31
:try_start_31
invoke-virtual {v3}, Ljava/io/BufferedReader;->close()V
.line 177
invoke-virtual {v2}, Ljava/io/InputStreamReader;->close()V
:try_end_37
.catch Ljava/io/IOException; {:try_start_31 .. :try_end_37} :catch_28
goto :goto_2c
.end method
.method private static b(Landroid/net/Uri;)Z
.registers 5
.prologue
const/4 v1, 0x1
const/4 v0, 0x0
.line 147
invoke-static {p0}, Ldxoptimizer/crt;->a(Landroid/net/Uri;)I
move-result v2
if-eq v2, v1, :cond_9
.line 163
:cond_8
:goto_8
return v0
.line 150
:cond_9
invoke-virtual {p0}, Landroid/net/Uri;->getQuery()Ljava/lang/String;
move-result-object v2
if-nez v2, :cond_15
invoke-virtual {p0}, Landroid/net/Uri;->getFragment()Ljava/lang/String;
move-result-object v2
if-eqz v2, :cond_17
:cond_15
move v0, v1
.line 151
goto :goto_8
.line 154
:cond_17
invoke-virtual {p0}, Landroid/net/Uri;->toString()Ljava/lang/String;
move-result-object v2
const-string v3, "%"
invoke-virtual {v2, v3}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v2
if-eqz v2, :cond_8
.line 158
sget v2, Landroid/os/Build$VERSION;->SDK_INT:I
packed-switch v2, :pswitch_data_2c
goto :goto_8
:pswitch_29
move v0, v1
.line 161
goto :goto_8
.line 158
nop
:pswitch_data_2c
.packed-switch 0xe
:pswitch_29
:pswitch_29
.end packed-switch
.end method
# virtual methods
.method public onPageFinished(Landroid/webkit/WebView;Ljava/lang/String;)V
.registers 5
.prologue
.line 213
invoke-super {p0, p1, p2}, Ldxoptimizer/csi;->onPageFinished(Landroid/webkit/WebView;Ljava/lang/String;)V
.line 214
iget-object v0, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
iget-object v1, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
invoke-virtual {v1}, Ldxoptimizer/vq;->m()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ldxoptimizer/vq;->a(Ljava/lang/String;)V
.line 216
iget-object v0, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
invoke-virtual {v0}, Ldxoptimizer/vq;->c()Landroid/view/View;
move-result-object v0
check-cast v0, Ldxoptimizer/csh;
invoke-virtual {v0}, Ldxoptimizer/csh;->getTitle()Ljava/lang/String;
move-result-object v0
.line 217
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_25
.line 218
iget-object v1, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-virtual {v1, v0}, Ldxoptimizer/vl;->a(Ljava/lang/String;)V
.line 220
:cond_25
iget-object v0, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-virtual {v0, p2}, Ldxoptimizer/vl;->c(Ljava/lang/String;)V
.line 221
return-void
.end method
.method public onPageStarted(Landroid/webkit/WebView;Ljava/lang/String;Landroid/graphics/Bitmap;)V
.registers 6
.prologue
.line 202
invoke-super {p0, p1, p2, p3}, Ldxoptimizer/csi;->onPageStarted(Landroid/webkit/WebView;Ljava/lang/String;Landroid/graphics/Bitmap;)V
.line 203
iget-object v0, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
invoke-virtual {v0}, Ldxoptimizer/vq;->m()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_20
.line 204
iget-object v0, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
iget-object v1, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
invoke-virtual {v1}, Ldxoptimizer/vq;->m()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ldxoptimizer/vq;->a(Ljava/lang/String;)V
.line 208
:cond_1a
:goto_1a
iget-object v0, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-virtual {v0, p2}, Ldxoptimizer/vl;->b(Ljava/lang/String;)V
.line 209
return-void
.line 205
:cond_20
invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_1a
.line 206
iget-object v0, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
invoke-virtual {v0, p2}, Ldxoptimizer/vq;->a(Ljava/lang/String;)V
goto :goto_1a
.end method
.method public onReceivedError(Landroid/webkit/WebView;ILjava/lang/String;Ljava/lang/String;)V
.registers 11
.prologue
.line 187
invoke-virtual {p1}, Landroid/webkit/WebView;->stopLoading()V
.line 188
iget-object v0, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
invoke-virtual {v0, p2}, Ldxoptimizer/vl;->b(I)V
.line 189
const-string v0, "www/err/html/net.html"
invoke-direct {p0, v0}, Ldxoptimizer/vp;->b(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
const-string v3, "text/html"
const-string v4, "UTF-8"
move-object v0, p1
move-object v1, p4
move-object v5, p4
invoke-virtual/range {v0 .. v5}, Landroid/webkit/WebView;->loadDataWithBaseURL(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 190
return-void
.end method
.method public onReceivedSslError(Landroid/webkit/WebView;Landroid/webkit/SslErrorHandler;Landroid/net/http/SslError;)V
.registers 6
.annotation build Landroid/annotation/TargetApi;
value = 0x8
.end annotation
.prologue
.line 195
invoke-virtual {p2}, Landroid/webkit/SslErrorHandler;->cancel()V
.line 196
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "file:///android_asset/www/err/html/ssl.html?api="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Landroid/webkit/WebView;->loadUrl(Ljava/lang/String;)V
.line 197
iget-object v0, p0, Ldxoptimizer/vp;->a:Ldxoptimizer/vl;
const/16 v1, -0xb
invoke-virtual {v0, v1}, Ldxoptimizer/vl;->b(I)V
.line 198
return-void
.end method
.method public shouldInterceptRequest(Landroid/webkit/WebView;Ljava/lang/String;)Landroid/webkit/WebResourceResponse;
.registers 8
.annotation build Landroid/annotation/TargetApi;
value = 0xb
.end annotation
.prologue
const/4 v1, 0x0
.line 112
:try_start_1
invoke-direct {p0, p2}, Ldxoptimizer/vp;->a(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_2a
.line 113
const-string v0, "cordova"
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "DXCordovaWebViewClient: URL blocked by whitelist: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v0, v2}, Ldxoptimizer/crz;->c(Ljava/lang/String;Ljava/lang/String;)V
.line 115
new-instance v0, Landroid/webkit/WebResourceResponse;
const-string v2, "text/plain"
const-string v3, "UTF-8"
const/4 v4, 0x0
invoke-direct {v0, v2, v3, v4}, Landroid/webkit/WebResourceResponse;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/io/InputStream;)V
.line 134
:goto_29
return-object v0
.line 118
:cond_2a
iget-object v0, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
invoke-virtual {v0}, Ldxoptimizer/vq;->j()Ldxoptimizer/crt;
move-result-object v0
.line 119
invoke-static {p2}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v2
.line 121
invoke-virtual {v0, v2}, Ldxoptimizer/crt;->b(Landroid/net/Uri;)Landroid/net/Uri;
move-result-object v3
.line 123
invoke-virtual {v2, v3}, Landroid/net/Uri;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_4a
invoke-static {v2}, Ldxoptimizer/vp;->b(Landroid/net/Uri;)Z
move-result v4
if-nez v4, :cond_4a
invoke-static {v2}, Ldxoptimizer/vp;->a(Landroid/net/Uri;)Z
move-result v2
if-eqz v2, :cond_71
.line 124
:cond_4a
const/4 v2, 0x1
invoke-virtual {v0, v3, v2}, Ldxoptimizer/crt;->a(Landroid/net/Uri;Z)Ldxoptimizer/crt$a;
move-result-object v2
.line 125
new-instance v0, Landroid/webkit/WebResourceResponse;
iget-object v3, v2, Ldxoptimizer/crt$a;->c:Ljava/lang/String;
const-string v4, "UTF-8"
iget-object v2, v2, Ldxoptimizer/crt$a;->b:Ljava/io/InputStream;
invoke-direct {v0, v3, v4, v2}, Landroid/webkit/WebResourceResponse;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/io/InputStream;)V
:try_end_5a
.catch Ljava/io/IOException; {:try_start_1 .. :try_end_5a} :catch_5b
goto :goto_29
.line 129
:catch_5b
move-exception v0
.line 130
instance-of v2, v0, Ljava/io/FileNotFoundException;
if-nez v2, :cond_67
.line 131
const-string v2, "IceCreamCordovaWebViewClient"
const-string v3, "Error occurred while loading a file (returning a 404)."
invoke-static {v2, v3, v0}, Ldxoptimizer/crz;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
.line 134
:cond_67
new-instance v0, Landroid/webkit/WebResourceResponse;
const-string v2, "text/plain"
const-string v3, "UTF-8"
invoke-direct {v0, v2, v3, v1}, Landroid/webkit/WebResourceResponse;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/io/InputStream;)V
goto :goto_29
:cond_71
move-object v0, v1
.line 128
goto :goto_29
.end method
.method public shouldOverrideUrlLoading(Landroid/webkit/WebView;Ljava/lang/String;)Z
.registers 5
.prologue
.line 55
invoke-static {p2}, Ldxoptimizer/vo;->b(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/dianxinos/dxcordova/Action;->a(Ljava/lang/String;)Lcom/dianxinos/dxcordova/Action$Code;
move-result-object v0
.line 56
sget-object v1, Lcom/dianxinos/dxcordova/Action$Code;->UNKNOWN:Lcom/dianxinos/dxcordova/Action$Code;
if-eq v0, v1, :cond_21
.line 58
:try_start_c
iget-object v1, p0, Ldxoptimizer/vp;->b:Ldxoptimizer/vq;
invoke-virtual {v1, v0}, Ldxoptimizer/vq;->a(Lcom/dianxinos/dxcordova/Action$Code;)Z
move-result v1
if-nez v1, :cond_18
sget-object v1, Lcom/dianxinos/dxcordova/Action$Code;->PAGE:Lcom/dianxinos/dxcordova/Action$Code;
if-ne v0, v1, :cond_1b
.line 59
:cond_18
invoke-direct {p0, v0, p2}, Ldxoptimizer/vp;->a(Lcom/dianxinos/dxcordova/Action$Code;Ljava/lang/String;)V
:try_end_1b
.catch Ljava/lang/Exception; {:try_start_c .. :try_end_1b} :catch_1d
.line 61
:cond_1b
const/4 v0, 0x1
.line 67
:goto_1c
return v0
.line 62
:catch_1d
move-exception v0
.line 63
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
.line 67
:cond_21
invoke-super {p0, p1, p2}, Ldxoptimizer/csi;->shouldOverrideUrlLoading(Landroid/webkit/WebView;Ljava/lang/String;)Z
move-result v0
goto :goto_1c
.end method