.class public Lcsdk/gluads/jsevaluator/WebViewWrapper; .super Ljava/lang/Object; .source "SourceFile" # interfaces .implements Lcsdk/gluads/jsevaluator/interfaces/WebViewWrapperInterface; # annotations .annotation build Landroid/annotation/SuppressLint; value = { "SetJavaScriptEnabled" } .end annotation # instance fields .field protected mWebView:Landroid/webkit/WebView; # direct methods .method public constructor (Landroid/content/Context;Lcsdk/gluads/jsevaluator/interfaces/CallJavaResultInterface;)V .locals 1 .line 19 invoke-direct {p0}, Ljava/lang/Object;->()V .line 21 :try_start_0 new-instance v0, Landroid/webkit/WebView; invoke-direct {v0, p1}, Landroid/webkit/WebView;->(Landroid/content/Context;)V iput-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; const/4 p1, 0x1 .line 24 invoke-virtual {v0, p1}, Landroid/view/View;->setWillNotDraw(Z)V iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; .line 26 invoke-virtual {v0}, Landroid/webkit/WebView;->getSettings()Landroid/webkit/WebSettings; move-result-object v0 .line 27 invoke-virtual {v0, p1}, Landroid/webkit/WebSettings;->setJavaScriptEnabled(Z)V const-string p1, "utf-8" .line 28 invoke-virtual {v0, p1}, Landroid/webkit/WebSettings;->setDefaultTextEncodingName(Ljava/lang/String;)V .line 29 new-instance p1, Lcsdk/gluads/jsevaluator/JavaScriptInterface; invoke-direct {p1, p2}, Lcsdk/gluads/jsevaluator/JavaScriptInterface;->(Lcsdk/gluads/jsevaluator/interfaces/CallJavaResultInterface;)V iget-object p2, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; const-string v0, "evgeniiJsEvaluator" .line 30 invoke-virtual {p2, p1, v0}, Landroid/webkit/WebView;->addJavascriptInterface(Ljava/lang/Object;Ljava/lang/String;)V :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception p1 .line 33 invoke-virtual {p1}, Ljava/lang/Throwable;->printStackTrace()V :goto_0 return-void .end method # virtual methods .method public destroy()V .locals 2 iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; if-eqz v0, :cond_0 const-string v1, "evgeniiJsEvaluator" .line 59 invoke-virtual {v0, v1}, Landroid/webkit/WebView;->removeJavascriptInterface(Ljava/lang/String;)V iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; const-string v1, "about:blank" .line 62 invoke-virtual {v0, v1}, Landroid/webkit/WebView;->loadUrl(Ljava/lang/String;)V iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; .line 63 invoke-virtual {v0}, Landroid/webkit/WebView;->stopLoading()V iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; .line 69 invoke-virtual {v0}, Landroid/webkit/WebView;->clearHistory()V iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; .line 70 invoke-virtual {v0}, Landroid/view/ViewGroup;->removeAllViews()V iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; .line 71 invoke-virtual {v0}, Landroid/view/View;->destroyDrawingCache()V iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; .line 72 invoke-virtual {v0}, Landroid/webkit/WebView;->destroy()V const/4 v0, 0x0 iput-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; :cond_0 return-void .end method .method public getWebView()Landroid/webkit/WebView; .locals 1 iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; return-object v0 .end method .method public loadJavaScript(Ljava/lang/String;)V .locals 3 iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; if-eqz v0, :cond_0 .line 42 :try_start_0 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "" invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 const-string v0, "UTF-8" .line 43 invoke-virtual {p1, v0}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B move-result-object p1 const/4 v0, 0x0 .line 44 invoke-static {p1, v0}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String; move-result-object p1 iget-object v0, p0, Lcsdk/gluads/jsevaluator/WebViewWrapper;->mWebView:Landroid/webkit/WebView; .line 45 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "data:text/html;charset=utf-8;base64," invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-virtual {v0, p1}, Landroid/webkit/WebView;->loadUrl(Ljava/lang/String;)V :try_end_0 .catch Ljava/io/UnsupportedEncodingException; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception p1 .line 47 invoke-virtual {p1}, Ljava/lang/Throwable;->printStackTrace()V :cond_0 :goto_0 return-void .end method