Info Call to dangerous WebView settings API

Description

List of all WebView methods used in the application.

Recommendation

If your application accesses sensitive data with a WebView, you may want to use the clearCache() method to delete any files stored locally.

Any URI received via an intent from outside a trust-boundary should be validated before rendering it with WebView

Technical details

Method org.apache.cordova.engine.SystemWebViewEngine.initWebViewSettings() calling method android.webkit.WebSettings.setJavaScriptEnabled()


    private void initWebViewSettings()
    {
        this.webView.setInitialScale(0);
        this.webView.setVerticalScrollBarEnabled(0);
        android.webkit.WebSettings v9 = this.webView.getSettings();
        v9.setJavaScriptEnabled(1);
        v9.setJavaScriptCanOpenWindowsAutomatically(1);
        v9.setLayoutAlgorithm(android.webkit.WebSettings$LayoutAlgorithm.NORMAL);
        try {
            int v12_3 = new Class[1];
            v12_3[0] = Boolean.TYPE;
            reflect.Method v5 = android.webkit.WebSettings.getMethod("setNavDump", v12_3);
            org.apache.cordova.LOG.d("SystemWebViewEngine", new StringBuilder().append("CordovaWebView is running on device made by: ").append(android.os.Build.MANUFACTURER).toString());
        } catch (reflect.InvocationTargetException v4) {
            org.apache.cordova.LOG.d("SystemWebViewEngine", "We are on a modern version of Android, we will deprecate HTC 2.3 devices in 2.8");
            v9.setSaveFormData(0);
            v9.setSavePassword(0);
            if (android.os.Build$VERSION.SDK_INT >= 16) {
                v9.setAllowUniversalAccessFromFileURLs(1);
            }
            if (android.os.Build$VERSION.SDK_INT >= 17) {
                v9.setMediaPlaybackRequiresUserGesture(0);
            }
            String v2 = this.webView.getContext().getApplicationContext().getDir("database", 0).getPath();
            v9.setDatabaseEnabled(1);
            v9.setDatabasePath(v2);
            if (((this.webView.getContext().getApplicationContext().getApplicationInfo().flags & 2) != 0) && (android.os.Build$VERSION.SDK_INT >= 19)) {
                this.enableRemoteDebugging();
            }
            v9.setGeolocationDatabasePath(v2);
            v9.setDomStorageEnabled(1);
            v9.setGeolocationEnabled(1);
            v9.setAppCacheMaxSize(5242880);
            v9.setAppCachePath(v2);
            v9.setAppCacheEnabled(1);
            String v3 = v9.getUserAgentString();
            String v8 = this.preferences.getString("OverrideUserAgent", 0);
            if (v8 == null) {
                String v1 = this.preferences.getString("AppendUserAgent", 0);
                if (v1 != null) {
                    v9.setUserAgentString(new StringBuilder().append(v3).append(" ").append(v1).toString());
                }
            } else {
                v9.setUserAgentString(v8);
            }
            android.content.IntentFilter v6_1 = new android.content.IntentFilter();
            v6_1.addAction("android.intent.action.CONFIGURATION_CHANGED");
            if (this.receiver == null) {
                this.receiver = new org.apache.cordova.engine.SystemWebViewEngine$2(this, v9);
                this.webView.getContext().registerReceiver(this.receiver, v6_1);
            }
            return;
        } catch (reflect.InvocationTargetException v4) {
            org.apache.cordova.LOG.d("SystemWebViewEngine", "Doing the NavDump failed with bad arguments");
        } catch (reflect.InvocationTargetException v4) {
            org.apache.cordova.LOG.d("SystemWebViewEngine", "This should never happen: IllegalAccessException means this isn\'t Android anymore");
        } catch (reflect.InvocationTargetException v4) {
            org.apache.cordova.LOG.d("SystemWebViewEngine", "This should never happen: InvocationTargetException means this isn\'t Android anymore.");
        }
        if ((android.os.Build$VERSION.SDK_INT >= 11) || (!android.os.Build.MANUFACTURER.contains("HTC"))) {
        } else {
            android.content.Context v10_32 = new Object[1];
            v10_32[0] = Boolean.valueOf(1);
            v5.invoke(v9, v10_32);
        }
    }

Method android.support.v4.widget.SimpleCursorAdapter.setViewImage() calling method android.net.Uri.parse()


    public void setViewImage(android.widget.ImageView p3, String p4)
    {
        try {
            p3.setImageResource(Integer.parseInt(p4));
        } catch (NumberFormatException v0) {
            p3.setImageURI(android.net.Uri.parse(p4));
        }
        return;
    }

Method com.google.firebase.auth.UserProfileChangeRequest.<init>() calling method android.net.Uri.parse()


    UserProfileChangeRequest(String p2, String p3, boolean p4, boolean p5)
    {
        android.net.Uri v0_0;
        this.zzegt = p2;
        this.zzmdx = p3;
        this.zzmdy = p4;
        this.zzmdz = p5;
        if (!android.text.TextUtils.isEmpty(p3)) {
            v0_0 = android.net.Uri.parse(p3);
        } else {
            v0_0 = 0;
        }
        this.zzmea = v0_0;
        return;
    }

Method com.google.android.gms.internal.zzdyo.getPhotoUri() calling method android.net.Uri.parse()


    public final android.net.Uri getPhotoUri()
    {
        int v0_2;
        if (android.text.TextUtils.isEmpty(this.zzmdx)) {
            v0_2 = 0;
        } else {
            v0_2 = android.net.Uri.parse(this.zzmdx);
        }
        return v0_2;
    }

Method com.google.android.gms.internal.zzdyk.getPhotoUri() calling method android.net.Uri.parse()


    public final android.net.Uri getPhotoUri()
    {
        int v0_2;
        if (android.text.TextUtils.isEmpty(this.zzmdx)) {
            v0_2 = 0;
        } else {
            v0_2 = android.net.Uri.parse(this.zzmdx);
        }
        return v0_2;
    }

Method com.google.android.gms.internal.zzdgr.zza() calling method android.net.Uri.parse()


    protected final varargs com.google.android.gms.internal.zzdij zza(com.google.android.gms.internal.zzczu p7, com.google.android.gms.internal.zzdij[] p8)
    {
        String v0_25;
        String v2_0 = 0;
        com.google.android.gms.common.internal.zzbq.checkArgument(1);
        if (p8.length <= 0) {
            v0_25 = 0;
        } else {
            v0_25 = 1;
        }
        String v0_9;
        com.google.android.gms.common.internal.zzbq.checkArgument(v0_25);
        java.util.Iterator v4_1 = p8[0];
        if ((v4_1 instanceof com.google.android.gms.internal.zzdip)) {
            v0_9 = 0;
        } else {
            v0_9 = 1;
        }
        String v0_17;
        com.google.android.gms.common.internal.zzbq.checkArgument(v0_9);
        if (p8.length <= 1) {
            v0_17 = com.google.android.gms.internal.zzdip.zzktb;
        } else {
            v0_17 = p8[1];
        }
        if ((v0_17 != com.google.android.gms.internal.zzdip.zzktb) && (!(v0_17 instanceof com.google.android.gms.internal.zzdiq))) {
            StringBuilder v3_2 = 0;
        } else {
            v3_2 = 1;
        }
        StringBuilder v3_4;
        com.google.android.gms.common.internal.zzbq.checkArgument(v3_2);
        if (p8.length <= 2) {
            v3_4 = com.google.android.gms.internal.zzdip.zzktb;
        } else {
            v3_4 = p8[2];
        }
        if ((v3_4 == com.google.android.gms.internal.zzdip.zzktb) || (!(v3_4 instanceof com.google.android.gms.internal.zzdip))) {
            v2_0 = 1;
        }
        com.google.android.gms.common.internal.zzbq.checkArgument(v2_0);
        String v2_1 = android.net.Uri.parse(com.google.android.gms.internal.zzdbj.zzd(v4_1)).buildUpon();
        if (v0_17 != com.google.android.gms.internal.zzdip.zzktb) {
            java.util.Iterator v4_0 = ((java.util.List) ((com.google.android.gms.internal.zzdiq) v0_17).value()).iterator();
            while (v4_0.hasNext()) {
                String v0_3 = ((com.google.android.gms.internal.zzdij) v4_0.next());
                com.google.android.gms.common.internal.zzbq.checkArgument((v0_3 instanceof com.google.android.gms.internal.zzdit));
                java.util.Iterator v5_1 = ((java.util.Map) ((com.google.android.gms.internal.zzdit) v0_3).value()).entrySet().iterator();
                while (v5_1.hasNext()) {
                    String v0_11 = ((java.util.Map$Entry) v5_1.next());
                    v2_1.appendQueryParameter(((String) v0_11.getKey()).toString(), com.google.android.gms.internal.zzdbj.zzd(com.google.android.gms.internal.zzdix.zza(p7, ((com.google.android.gms.internal.zzdij) v0_11.getValue()))));
                }
            }
        }
        String v0_24 = v2_1.build().toString();
        if (v3_4 != com.google.android.gms.internal.zzdip.zzktb) {
            String v1_9 = com.google.android.gms.internal.zzdbj.zzd(v3_4);
            this.zzkqp.zzay(v0_24, v1_9);
            com.google.android.gms.internal.zzcze.v(new StringBuilder(((String.valueOf(v0_24).length() + 30) + String.valueOf(v1_9).length())).append("SendPixel: url = ").append(v0_24).append(", uniqueId = ").append(v1_9).toString());
        } else {
            String v0_32;
            this.zzkqp.zzll(v0_24);
            String v0_30 = String.valueOf(v0_24);
            if (v0_30.length() == 0) {
                v0_32 = new String("SendPixel: url = ");
            } else {
                v0_32 = "SendPixel: url = ".concat(v0_30);
            }
            com.google.android.gms.internal.zzcze.v(v0_32);
        }
        return com.google.android.gms.internal.zzdip.zzktb;
    }

Method com.google.android.gms.common.images.WebImage.zzy() calling method android.net.Uri.parse()


    private static android.net.Uri zzy(org.json.JSONObject p2)
    {
        android.net.Uri v0 = 0;
        if (p2.has("url")) {
            try {
                v0 = android.net.Uri.parse(p2.getString("url"));
            } catch (org.json.JSONException v1) {
            }
        }
        return v0;
    }

Method com.google.android.gms.auth.api.signin.GoogleSignInAccount.zzeu() calling method android.net.Uri.parse()


    public static com.google.android.gms.auth.api.signin.GoogleSignInAccount zzeu(String p14)
    {
        com.google.android.gms.auth.api.signin.GoogleSignInAccount v10 = 0;
        if (!android.text.TextUtils.isEmpty(p14)) {
            int v6;
            org.json.JSONObject v11_1 = new org.json.JSONObject(p14);
            com.google.android.gms.auth.api.signin.GoogleSignInAccount v0_9 = v11_1.optString("photoUrl", 0);
            if (android.text.TextUtils.isEmpty(v0_9)) {
                v6 = 0;
            } else {
                v6 = android.net.Uri.parse(v0_9);
            }
            long v12 = Long.parseLong(v11_1.getString("expirationTime"));
            java.util.HashSet v9_1 = new java.util.HashSet();
            String v1_1 = v11_1.getJSONArray("grantedScopes");
            String v2_0 = v1_1.length();
            com.google.android.gms.auth.api.signin.GoogleSignInAccount v0_4 = 0;
            while (v0_4 < v2_0) {
                v9_1.add(new com.google.android.gms.common.api.Scope(v1_1.getString(v0_4)));
                v0_4++;
            }
            com.google.android.gms.auth.api.signin.GoogleSignInAccount v0_7 = com.google.android.gms.auth.api.signin.GoogleSignInAccount.zza(v11_1.optString("id"), v11_1.optString("tokenId", 0), v11_1.optString("email", 0), v11_1.optString("displayName", 0), v11_1.optString("givenName", 0), v11_1.optString("familyName", 0), v6, Long.valueOf(v12), v11_1.getString("obfuscatedIdentifier"), v9_1);
            v0_7.zzegv = v11_1.optString("serverAuthCode", 0);
            v10 = v0_7;
        }
        return v10;
    }

Method com.google.android.gms.analytics.Tracker.setCampaignParamsOnNextHit() calling method android.net.Uri.parse()


    public void setCampaignParamsOnNextHit(android.net.Uri p5)
    {
        if ((p5 != null) && (!p5.isOpaque())) {
            String v0_6 = p5.getQueryParameter("referrer");
            if (!android.text.TextUtils.isEmpty(v0_6)) {
                String v0_2;
                String v0_0 = String.valueOf(v0_6);
                if (v0_0.length() == 0) {
                    v0_2 = new String("http://hostname/?");
                } else {
                    v0_2 = "http://hostname/?".concat(v0_0);
                }
                String v0_4 = android.net.Uri.parse(v0_2);
                java.util.Map v1_2 = v0_4.getQueryParameter("utm_id");
                if (v1_2 != null) {
                    this.zzdqh.put("&ci", v1_2);
                }
                java.util.Map v1_4 = v0_4.getQueryParameter("anid");
                if (v1_4 != null) {
                    this.zzdqh.put("&anid", v1_4);
                }
                java.util.Map v1_6 = v0_4.getQueryParameter("utm_campaign");
                if (v1_6 != null) {
                    this.zzdqh.put("&cn", v1_6);
                }
                java.util.Map v1_8 = v0_4.getQueryParameter("utm_content");
                if (v1_8 != null) {
                    this.zzdqh.put("&cc", v1_8);
                }
                java.util.Map v1_10 = v0_4.getQueryParameter("utm_medium");
                if (v1_10 != null) {
                    this.zzdqh.put("&cm", v1_10);
                }
                java.util.Map v1_12 = v0_4.getQueryParameter("utm_source");
                if (v1_12 != null) {
                    this.zzdqh.put("&cs", v1_12);
                }
                java.util.Map v1_14 = v0_4.getQueryParameter("utm_term");
                if (v1_14 != null) {
                    this.zzdqh.put("&ck", v1_14);
                }
                java.util.Map v1_16 = v0_4.getQueryParameter("dclid");
                if (v1_16 != null) {
                    this.zzdqh.put("&dclid", v1_16);
                }
                java.util.Map v1_19 = v0_4.getQueryParameter("gclid");
                if (v1_19 != null) {
                    this.zzdqh.put("&gclid", v1_19);
                }
                String v0_7 = v0_4.getQueryParameter("aclid");
                if (v0_7 != null) {
                    this.zzdqh.put("&aclid", v0_7);
                }
            }
        }
        return;
    }

Method org.apache.cordova.file.FileUtils.remapUri() calling method android.net.Uri.parse()


    public android.net.Uri remapUri(android.net.Uri p8)
    {
        android.net.Uri v4 = 0;
        if ("cdvfile".equals(p8.getScheme())) {
            try {
                org.apache.cordova.file.LocalFilesystemURL v2 = org.apache.cordova.file.LocalFilesystemURL.parse(p8);
                org.apache.cordova.file.Filesystem v1 = this.filesystemForURL(v2);
            } catch (IllegalArgumentException v0) {
            }
            if ((v1 != null) && (v1.filesystemPathForURL(v2) != null)) {
                v4 = android.net.Uri.parse(new StringBuilder().append("file://").append(v1.filesystemPathForURL(v2)).toString());
            }
        }
        return v4;
    }

Method org.apache.cordova.file.FileUtils.resolveLocalFileSystemURI() calling method android.net.Uri.parse()


    private org.json.JSONObject resolveLocalFileSystemURI(String p9)
    {
        if (p9 != null) {
            android.net.Uri v5 = android.net.Uri.parse(p9);
            int v3 = 0;
            org.apache.cordova.file.LocalFilesystemURL v2 = org.apache.cordova.file.LocalFilesystemURL.parse(v5);
            if (v2 == null) {
                v2 = this.resolveNativeUri(v5);
                v3 = 1;
            }
            try {
                org.apache.cordova.file.Filesystem v1 = this.filesystemForURL(v2);
            } catch (IllegalArgumentException v0) {
                java.net.MalformedURLException v4_1 = new java.net.MalformedURLException("Unrecognized filesystem URL");
                v4_1.initCause(v0);
                throw v4_1;
            }
            if (v1 != null) {
                if (!v1.exists(v2)) {
                    throw new java.io.FileNotFoundException();
                } else {
                    if (v3 == 0) {
                        v2 = v1.toLocalUri(v1.toNativeUri(v2));
                    }
                    return v1.getEntryForLocalURL(v2);
                }
            } else {
                throw new java.net.MalformedURLException("No installed handlers for this URL");
            }
        } else {
            throw new java.net.MalformedURLException("Unrecognized filesystem URL");
        }
    }

Method org.apache.cordova.file.ContentFilesystem.toNativeUri() calling method android.net.Uri.parse()


    public android.net.Uri toNativeUri(org.apache.cordova.file.LocalFilesystemURL p7)
    {
        android.net.Uri v4_19;
        String v0 = p7.uri.getEncodedPath().substring((this.name.length() + 2));
        if (v0.length() >= 2) {
            String v3 = new StringBuilder().append("content://").append(v0).toString();
            String v2 = p7.uri.getEncodedQuery();
            if (v2 != null) {
                v3 = new StringBuilder().append(v3).append(63).append(v2).toString();
            }
            String v1 = p7.uri.getEncodedFragment();
            if (v1 != null) {
                v3 = new StringBuilder().append(v3).append(35).append(v1).toString();
            }
            v4_19 = android.net.Uri.parse(v3);
        } else {
            v4_19 = 0;
        }
        return v4_19;
    }

Method org.apache.cordova.file.ContentFilesystem.<init>() calling method android.net.Uri.parse()


    public ContentFilesystem(android.content.Context p3, org.apache.cordova.CordovaResourceApi p4)
    {
        super(android.net.Uri.parse("content://"), "content", p4);
        super.context = p3;
        return;
    }

Method org.apache.cordova.file.AssetFilesystem.<init>() calling method android.net.Uri.parse()


    public AssetFilesystem(android.content.res.AssetManager p3, org.apache.cordova.CordovaResourceApi p4)
    {
        super(android.net.Uri.parse("file:///android_asset/"), "assets", p4);
        super.assetManager = p3;
        return;
    }

Method org.apache.cordova.CordovaWebViewImpl.showWebPage() calling method android.net.Uri.parse()


    public void showWebPage(String p10, boolean p11, boolean p12, java.util.Map p13)
    {
        String v5_2 = new Object[3];
        v5_2[0] = p10;
        v5_2[1] = Boolean.valueOf(p11);
        v5_2[2] = Boolean.valueOf(p12);
        org.apache.cordova.LOG.d("CordovaWebViewImpl", "showWebPage(%s, %b, %b, HashMap)", v5_2);
        if (p12) {
            this.engine.clearHistory();
        }
        if (!p11) {
            if (!this.pluginManager.shouldAllowNavigation(p10)) {
                org.apache.cordova.LOG.w("CordovaWebViewImpl", new StringBuilder().append("showWebPage: Refusing to load URL into webview since it is not in the <allow-navigation> whitelist. URL=").append(p10).toString());
            } else {
                this.loadUrlIntoView(p10, 1);
            }
        }
        if (this.pluginManager.shouldOpenExternalUrl(p10).booleanValue()) {
            try {
                android.content.Intent v1_1 = new android.content.Intent("android.intent.action.VIEW");
                v1_1.addCategory("android.intent.category.BROWSABLE");
                android.net.Uri v2 = android.net.Uri.parse(p10);
            } catch (android.content.ActivityNotFoundException v0) {
                org.apache.cordova.LOG.e("CordovaWebViewImpl", new StringBuilder().append("Error loading url ").append(p10).toString(), v0);
            }
            if (!"file".equals(v2.getScheme())) {
                v1_1.setData(v2);
            } else {
                v1_1.setDataAndType(v2, this.resourceApi.getMimeType(v2));
            }
            this.cordova.getActivity().startActivity(v1_1);
        } else {
            org.apache.cordova.LOG.w("CordovaWebViewImpl", new StringBuilder().append("showWebPage: Refusing to send intent for URL since it is not in the <allow-intent> whitelist. URL=").append(p10).toString());
        }
        return;
    }

Method me.leolin.shortcutbadger.impl.SamsungHomeBadger.executeBadge() calling method android.net.Uri.parse()


    public void executeBadge(android.content.Context p13, android.content.ComponentName p14, int p15)
    {
        android.net.Uri v1 = android.net.Uri.parse("content://com.sec.badge/apps?notify=true");
        android.content.ContentResolver v0 = p13.getContentResolver();
        try {
            int v4_2 = new String[1];
            v4_2[0] = p14.getPackageName();
            android.database.Cursor v7 = v0.query(v1, me.leolin.shortcutbadger.impl.SamsungHomeBadger.CONTENT_PROJECTION, "package=?", v4_2, 0);
        } catch (int v2_10) {
            me.leolin.shortcutbadger.util.CloseHelper.close(v7);
            throw v2_10;
        }
        if (v7 != null) {
            String v9 = p14.getClassName();
            int v8 = 0;
            while (v7.moveToNext()) {
                int v10 = v7.getInt(0);
                android.content.ContentValues v6_1 = this.getContentValues(p14, p15, 0);
                String[] v3_1 = new String[1];
                v3_1[0] = String.valueOf(v10);
                v0.update(v1, v6_1, "_id=?", v3_1);
                if (v9.equals(v7.getString(v7.getColumnIndex("class")))) {
                    v8 = 1;
                }
            }
            if (v8 == 0) {
                v0.insert(v1, this.getContentValues(p14, p15, 1));
            }
        }
        me.leolin.shortcutbadger.util.CloseHelper.close(v7);
        return;
    }

Method me.leolin.shortcutbadger.impl.NovaHomeBadger.executeBadge() calling method android.net.Uri.parse()


    public void executeBadge(android.content.Context p6, android.content.ComponentName p7, int p8)
    {
        try {
            android.content.ContentValues v0_1 = new android.content.ContentValues();
            v0_1.put("tag", new StringBuilder().append(p7.getPackageName()).append("/").append(p7.getClassName()).toString());
            v0_1.put("count", Integer.valueOf(p8));
            p6.getContentResolver().insert(android.net.Uri.parse("content://com.teslacoilsw.notifier/unread_count"), v0_1);
        } catch (me.leolin.shortcutbadger.ShortcutBadgeException v2) {
        } catch (Exception v1) {
            throw new me.leolin.shortcutbadger.ShortcutBadgeException(v1.getMessage());
        }
        return;
    }

Method com.google.firebase.auth.internal.zzf.getPhotoUrl() calling method android.net.Uri.parse()


    public final android.net.Uri getPhotoUrl()
    {
        if ((!android.text.TextUtils.isEmpty(this.zzmdx)) && (this.zzmea == null)) {
            this.zzmea = android.net.Uri.parse(this.zzmdx);
        }
        return this.zzmea;
    }

Method android.support.v4.app.ActivityCompat.getReferrer() calling method android.net.Uri.parse()


    public static android.net.Uri getReferrer(android.app.Activity p5)
    {
        int v1_0;
        if (android.os.Build$VERSION.SDK_INT < 22) {
            android.content.Intent v0 = p5.getIntent();
            v1_0 = ((android.net.Uri) v0.getParcelableExtra("android.intent.extra.REFERRER"));
            if (v1_0 == 0) {
                String v2 = v0.getStringExtra("android.intent.extra.REFERRER_NAME");
                if (v2 == null) {
                    v1_0 = 0;
                } else {
                    v1_0 = android.net.Uri.parse(v2);
                }
            }
        } else {
            v1_0 = android.support.v4.app.ActivityCompatApi22.getReferrer(p5);
        }
        return v1_0;
    }

Method org.apache.cordova.file.LocalFilesystemURL.parse() calling method android.net.Uri.parse()


    public static org.apache.cordova.file.LocalFilesystemURL parse(String p1)
    {
        return org.apache.cordova.file.LocalFilesystemURL.parse(android.net.Uri.parse(p1));
    }

Method org.apache.cordova.engine.SystemWebViewClient.shouldInterceptRequest() calling method android.net.Uri.parse()


    public android.webkit.WebResourceResponse shouldInterceptRequest(android.webkit.WebView p11, String p12)
    {
        try {
            int v5_5;
            if (this.parentEngine.pluginManager.shouldAllowRequest(p12)) {
                org.apache.cordova.CordovaResourceApi v3 = this.parentEngine.resourceApi;
                android.net.Uri v1 = android.net.Uri.parse(p12);
                android.net.Uri v2 = v3.remapUri(v1);
                if ((v1.equals(v2)) && ((!org.apache.cordova.engine.SystemWebViewClient.needsSpecialsInAssetUrlFix(v1)) && (!org.apache.cordova.engine.SystemWebViewClient.needsKitKatContentUrlFix(v1)))) {
                    v5_5 = 0;
                } else {
                    org.apache.cordova.CordovaResourceApi$OpenForReadResult v4 = v3.openForRead(v2, 1);
                    v5_5 = new android.webkit.WebResourceResponse(v4.mimeType, "UTF-8", v4.inputStream);
                }
            } else {
                org.apache.cordova.LOG.w("SystemWebViewClient", new StringBuilder().append("URL blocked by whitelist: ").append(p12).toString());
                v5_5 = new android.webkit.WebResourceResponse("text/plain", "UTF-8", 0);
            }
        } catch (java.io.IOException v0) {
            if (!(v0 instanceof java.io.FileNotFoundException)) {
                org.apache.cordova.LOG.e("SystemWebViewClient", "Error occurred while loading a file (returning a 404).", v0);
            }
            v5_5 = new android.webkit.WebResourceResponse("text/plain", "UTF-8", 0);
        }
        return v5_5;
    }

Method org.apache.cordova.Whitelist.isUrlWhiteListed() calling method android.net.Uri.parse()


    public boolean isUrlWhiteListed(String p6)
    {
        int v3 = 1;
        if (this.whiteList != null) {
            android.net.Uri v1 = android.net.Uri.parse(p6);
            java.util.Iterator v2 = this.whiteList.iterator();
            while (v2.hasNext()) {
                if (((org.apache.cordova.Whitelist$URLPattern) v2.next()).matches(v1)) {
                }
            }
            v3 = 0;
        }
        return v3;
    }

Method org.apache.cordova.CordovaPlugin.fromPluginUri() calling method android.net.Uri.parse()


    protected android.net.Uri fromPluginUri(android.net.Uri p2)
    {
        return android.net.Uri.parse(p2.getQueryParameter("origUri"));
    }

Method com.google.firebase.messaging.zza.zzs() calling method android.net.Uri.parse()


    final boolean zzs(android.os.Bundle p14)
    {
        android.app.Notification v0_46;
        if (!"1".equals(com.google.firebase.messaging.zza.zze(p14, "gcm.n.noui"))) {
            android.app.Notification v0_49;
            if (((android.app.KeyguardManager) this.mContext.getSystemService("keyguard")).inKeyguardRestrictedInputMode()) {
                v0_49 = 0;
            } else {
                if (!com.google.android.gms.common.util.zzq.zzamn()) {
                    android.os.SystemClock.sleep(10);
                }
                android.app.Notification v1_2 = android.os.Process.myPid();
                android.app.Notification v0_47 = ((android.app.ActivityManager) this.mContext.getSystemService("activity")).getRunningAppProcesses();
                if (v0_47 == null) {
                } else {
                    String v2_4 = v0_47.iterator();
                    while (v2_4.hasNext()) {
                        android.app.Notification v0_52 = ((android.app.ActivityManager$RunningAppProcessInfo) v2_4.next());
                        if (v0_52.pid == v1_2) {
                            if (v0_52.importance != 100) {
                                v0_49 = 0;
                            } else {
                                v0_49 = 1;
                            }
                        }
                    }
                }
            }
            if (v0_49 == null) {
                android.app.Notification v1_10 = this.zzj(p14, "gcm.n.title");
                if (android.text.TextUtils.isEmpty(v1_10)) {
                    v1_10 = this.mContext.getApplicationInfo().loadLabel(this.mContext.getPackageManager());
                }
                boolean v3_3;
                String v2_5 = this.zzj(p14, "gcm.n.body");
                android.app.Notification v0_60 = com.google.firebase.messaging.zza.zze(p14, "gcm.n.icon");
                if (android.text.TextUtils.isEmpty(v0_60)) {
                    android.app.Notification v0_5 = this.zzauu().getInt("com.google.firebase.messaging.default_notification_icon", 0);
                    if ((v0_5 == null) || (!this.zzid(v0_5))) {
                        v0_5 = this.mContext.getApplicationInfo().icon;
                    }
                    if ((v0_5 == null) || (!this.zzid(v0_5))) {
                        v0_5 = 17301651;
                    }
                    v3_3 = v0_5;
                } else {
                    StringBuilder v4_9 = this.mContext.getResources();
                    v3_3 = v4_9.getIdentifier(v0_60, "drawable", this.mContext.getPackageName());
                    if ((!v3_3) || (!this.zzid(v3_3))) {
                        v3_3 = v4_9.getIdentifier(v0_60, "mipmap", this.mContext.getPackageName());
                        if ((!v3_3) || (!this.zzid(v3_3))) {
                            android.util.Log.w("FirebaseMessaging", new StringBuilder((String.valueOf(v0_60).length() + 61)).append("Icon resource ").append(v0_60).append(" not found. Notification will use default icon.").toString());
                        }
                    }
                }
                StringBuilder v5_8;
                StringBuilder v4_5 = this.zzrs(com.google.firebase.messaging.zza.zze(p14, "gcm.n.color"));
                android.app.Notification v0_11 = com.google.firebase.messaging.zza.zzai(p14);
                if (!android.text.TextUtils.isEmpty(v0_11)) {
                    if (("default".equals(v0_11)) || (this.mContext.getResources().getIdentifier(v0_11, "raw", this.mContext.getPackageName()) == 0)) {
                        v5_8 = android.media.RingtoneManager.getDefaultUri(2);
                    } else {
                        String v7_2 = this.mContext.getPackageName();
                        v5_8 = android.net.Uri.parse(new StringBuilder((((String.valueOf("android.resource://").length() + 5) + String.valueOf(v7_2).length()) + String.valueOf(v0_11).length())).append("android.resource://").append(v7_2).append("/raw/").append(v0_11).toString());
                    }
                } else {
                    v5_8 = 0;
                }
                android.content.Intent v6_1;
                String v7_5;
                android.app.Notification v0_17 = this.zzt(p14);
                if (!com.google.firebase.messaging.FirebaseMessagingService.zzaj(p14)) {
                    v7_5 = 0;
                    v6_1 = v0_17;
                } else {
                    android.content.Intent v6_3 = new android.content.Intent("com.google.firebase.messaging.NOTIFICATION_OPEN");
                    com.google.firebase.messaging.zza.zza(v6_3, p14);
                    v6_3.putExtra("pending_intent", v0_17);
                    v6_1 = com.google.firebase.iid.zzx.zza(this.mContext, this.zzoac.incrementAndGet(), v6_3, 1073741824);
                    android.app.Notification v0_21 = new android.content.Intent("com.google.firebase.messaging.NOTIFICATION_DISMISS");
                    com.google.firebase.messaging.zza.zza(v0_21, p14);
                    v7_5 = com.google.firebase.iid.zzx.zza(this.mContext, this.zzoac.incrementAndGet(), v0_21, 1073741824);
                }
                if ((!com.google.android.gms.common.util.zzq.isAtLeastO()) || (this.mContext.getApplicationInfo().targetSdkVersion <= 25)) {
                    android.app.Notification v0_30 = new android.support.v4.app.NotificationCompat$Builder(this.mContext).setAutoCancel(1).setSmallIcon(v3_3);
                    if (!android.text.TextUtils.isEmpty(v1_10)) {
                        v0_30.setContentTitle(v1_10);
                    }
                    if (!android.text.TextUtils.isEmpty(v2_5)) {
                        v0_30.setContentText(v2_5);
                        v0_30.setStyle(new android.support.v4.app.NotificationCompat$BigTextStyle().bigText(v2_5));
                    }
                    if (v4_5 != null) {
                        v0_30.setColor(v4_5.intValue());
                    }
                    if (v5_8 != null) {
                        v0_30.setSound(v5_8);
                    }
                    if (v6_1 != null) {
                        v0_30.setContentIntent(v6_1);
                    }
                    if (v7_5 != null) {
                        v0_30.setDeleteIntent(v7_5);
                    }
                    android.app.Notification v1_7 = v0_30.build();
                } else {
                    v1_7 = this.zza(v1_10, v2_5, v3_3, v4_5, v5_8, v6_1, v7_5, this.zzrt(com.google.firebase.messaging.zza.zze(p14, "gcm.n.android_channel_id")));
                }
                String v2_1 = com.google.firebase.messaging.zza.zze(p14, "gcm.n.tag");
                if (android.util.Log.isLoggable("FirebaseMessaging", 3)) {
                    android.util.Log.d("FirebaseMessaging", "Showing notification");
                }
                android.app.Notification v0_44 = ((android.app.NotificationManager) this.mContext.getSystemService("notification"));
                if (android.text.TextUtils.isEmpty(v2_1)) {
                    v2_1 = new StringBuilder(37).append("FCM-Notification:").append(android.os.SystemClock.uptimeMillis()).toString();
                }
                v0_44.notify(v2_1, 0, v1_7);
                v0_46 = 1;
            } else {
                v0_46 = 0;
            }
        } else {
            v0_46 = 1;
        }
        return v0_46;
    }

Method com.google.firebase.messaging.zza.zzah() calling method android.net.Uri.parse()


    static android.net.Uri zzah(android.os.Bundle p2)
    {
        int v0_2 = com.google.firebase.messaging.zza.zze(p2, "gcm.n.link_android");
        if (android.text.TextUtils.isEmpty(v0_2)) {
            v0_2 = com.google.firebase.messaging.zza.zze(p2, "gcm.n.link");
        }
        int v0_1;
        if (android.text.TextUtils.isEmpty(v0_2)) {
            v0_1 = 0;
        } else {
            v0_1 = android.net.Uri.parse(v0_2);
        }
        return v0_1;
    }

Method com.google.android.gms.internal.zzr.<init>() calling method android.net.Uri.parse()


    public zzr(int p4, String p5, com.google.android.gms.internal.zzx p6)
    {
        int v0_9;
        if (!com.google.android.gms.internal.zzae$zza.zzbl) {
            v0_9 = 0;
        } else {
            v0_9 = new com.google.android.gms.internal.zzae$zza();
        }
        int v0_8;
        this.zzaf = v0_9;
        this.zzam = 1;
        this.zzan = 0;
        this.zzao = 0;
        this.zzap = 0;
        this.zzar = 0;
        this.mLock = new Object();
        this.zzag = p4;
        this.zzah = p5;
        this.zzaj = p6;
        this.zzaq = new com.google.android.gms.internal.zzh();
        if (android.text.TextUtils.isEmpty(p5)) {
            v0_8 = 0;
        } else {
            int v0_5 = android.net.Uri.parse(p5);
            if (v0_5 == 0) {
            } else {
                int v0_7 = v0_5.getHost();
                if (v0_7 == 0) {
                } else {
                    v0_8 = v0_7.hashCode();
                }
            }
        }
        this.zzai = v0_8;
        return;
    }

Method com.google.android.gms.internal.zzdmf.<clinit>() calling method android.net.Uri.parse()


    static zzdmf()
    {
        com.google.android.gms.internal.zzdmf.CONTENT_URI = android.net.Uri.parse("content://com.google.android.gsf.gservices");
        com.google.android.gms.internal.zzdmf.zzlnb = android.net.Uri.parse("content://com.google.android.gsf.gservices/prefix");
        com.google.android.gms.internal.zzdmf.zzlnc = java.util.regex.Pattern.compile("^(1|true|t|on|yes|y)$", 2);
        com.google.android.gms.internal.zzdmf.zzlnd = java.util.regex.Pattern.compile("^(0|false|f|off|no|n)$", 2);
        com.google.android.gms.internal.zzdmf.zzlne = new java.util.concurrent.atomic.AtomicBoolean();
        com.google.android.gms.internal.zzdmf.zzlng = new java.util.HashMap();
        com.google.android.gms.internal.zzdmf.zzlnh = new java.util.HashMap();
        com.google.android.gms.internal.zzdmf.zzlni = new java.util.HashMap();
        com.google.android.gms.internal.zzdmf.zzlnj = new java.util.HashMap();
        String[] v0_16 = new String[0];
        com.google.android.gms.internal.zzdmf.zzlnm = v0_16;
        return;
    }

Method com.google.android.gms.internal.zzczd.zzax() calling method android.net.Uri.parse()


    public static String zzax(String p3, String p4)
    {
        if (p4 != null) {
            android.net.Uri v0_0;
            android.net.Uri v0_3 = String.valueOf(p3);
            if (v0_3.length() == 0) {
                v0_0 = new String("http://hostname/?");
            } else {
                v0_0 = "http://hostname/?".concat(v0_3);
            }
            p3 = android.net.Uri.parse(v0_0).getQueryParameter(p4);
        } else {
            if (p3.length() <= 0) {
                p3 = 0;
            }
        }
        return p3;
    }

Method com.google.android.gms.internal.zzcue.zzks() calling method android.net.Uri.parse()


    public static android.net.Uri zzks(String p3)
    {
        android.net.Uri v0_0;
        android.net.Uri v0_3 = String.valueOf(android.net.Uri.encode(p3));
        if (v0_3.length() == 0) {
            v0_0 = new String("content://com.google.android.gms.phenotype/");
        } else {
            v0_0 = "content://com.google.android.gms.phenotype/".concat(v0_3);
        }
        return android.net.Uri.parse(v0_0);
    }

Method com.google.android.gms.internal.zzcid.onReceive() calling method android.net.Uri.parse()


    public final void onReceive(android.content.Context p13, android.content.Intent p14)
    {
        com.google.android.gms.internal.zzcim v3 = com.google.android.gms.internal.zzcim.zzdx(p13);
        com.google.android.gms.internal.zzchm v8 = v3.zzawy();
        if (p14 != null) {
            com.google.android.gms.internal.zzcih v0_12 = p14.getAction();
            v8.zzazj().zzj("Local receiver got", v0_12);
            if (!"com.google.android.gms.measurement.UPLOAD".equals(v0_12)) {
                if ("com.android.vending.INSTALL_REFERRER".equals(v0_12)) {
                    android.content.BroadcastReceiver$PendingResult v9 = this.zzjds.doGoAsync();
                    com.google.android.gms.internal.zzcih v0_3 = p14.getStringExtra("referrer");
                    if (v0_3 != null) {
                        v8.zzazh().zzj("Install referrer extras are", v0_3);
                        if (!v0_3.contains("?")) {
                            com.google.android.gms.internal.zzcih v0_4 = String.valueOf(v0_3);
                            if (v0_4.length() == 0) {
                                v0_3 = new String("?");
                            } else {
                                v0_3 = "?".concat(v0_4);
                            }
                        }
                        android.os.Bundle v6 = v3.zzawu().zzp(android.net.Uri.parse(v0_3));
                        if (v6 != null) {
                            long v4_1 = (1000 * p14.getLongExtra("referrer_timestamp_seconds", 0));
                            if (v4_1 == 0) {
                                v8.zzazf().log("Install referrer is missing timestamp");
                            }
                            v3.zzawx().zzg(new com.google.android.gms.internal.zzcie(this, v3, v4_1, v6, p13, v8, v9));
                        } else {
                            v8.zzazj().log("No campaign defined in install referrer broadcast");
                            if (v9 != null) {
                                v9.finish();
                            }
                        }
                    } else {
                        v8.zzazj().log("Install referrer extras are null");
                        if (v9 != null) {
                            v9.finish();
                        }
                    }
                }
            } else {
                com.google.android.gms.internal.zzcih v0_17 = new android.content.Intent().setClassName(p13, "com.google.android.gms.measurement.AppMeasurementService");
                v0_17.setAction("com.google.android.gms.measurement.UPLOAD");
                v8.zzazj().log("Starting wakeful intent.");
                this.zzjds.doStartService(p13, v0_17);
            }
        } else {
            v8.zzazf().log("Receiver called with null intent");
        }
        return;
    }

Method com.google.android.gms.dynamite.DynamiteModule.zze() calling method android.net.Uri.parse()


    private static int zze(android.content.Context p7, String p8, boolean p9)
    {
        try {
            int v1_4;
            com.google.android.gms.dynamite.DynamiteModule$zza v0_0 = p7.getContentResolver();
        } catch (com.google.android.gms.dynamite.DynamiteModule$zza v0_12) {
            int v1_6 = 0;
            if (v1_6 != 0) {
                v1_6.close();
            }
            throw v0_12;
        } catch (com.google.android.gms.dynamite.DynamiteModule$zza v0_5) {
            v1_6 = 0;
            if (!(v0_5 instanceof com.google.android.gms.dynamite.DynamiteModule$zzc)) {
                throw new com.google.android.gms.dynamite.DynamiteModule$zzc("V2 version check failed", v0_5, 0);
            } else {
                throw v0_5;
            }
            if (v1_6 != 0) {
                v1_6.close();
            }
            return int v2_4;
        } catch (com.google.android.gms.dynamite.DynamiteModule$zza v0_12) {
        }
        if (!p9) {
            v1_4 = "api";
        } else {
            v1_4 = "api_force_staging";
        }
        v1_6 = v0_0.query(android.net.Uri.parse(new StringBuilder((((String.valueOf("content://com.google.android.gms.chimera/").length() + 1) + String.valueOf(v1_4).length()) + String.valueOf(p8).length())).append("content://com.google.android.gms.chimera/").append(v1_4).append("/").append(p8).toString()), 0, 0, 0, 0);
        try {
            if ((v1_6 != 0) && (v1_6.moveToFirst())) {
                v2_4 = v1_6.getInt(0);
                if (v2_4 > 0) {
                    com.google.android.gms.dynamite.DynamiteModule.zzgwt = v1_6.getString(2);
                    com.google.android.gms.dynamite.DynamiteModule$zza v0_9 = ((com.google.android.gms.dynamite.DynamiteModule$zza) com.google.android.gms.dynamite.DynamiteModule.zzgwu.get());
                    if ((v0_9 != null) && (v0_9.zzgxd == null)) {
                        v0_9.zzgxd = v1_6;
                        v1_6 = 0;
                    }
                }
            } else {
                android.util.Log.w("DynamiteModule", "Failed to retrieve remote module version.");
                throw new com.google.android.gms.dynamite.DynamiteModule$zzc("Failed to connect to dynamite module ContentResolver.", 0);
            }
        } catch (com.google.android.gms.dynamite.DynamiteModule$zza v0_5) {
        }
    }

Method com.google.android.gms.common.internal.zzak.zzt() calling method android.net.Uri.parse()


    public static android.content.Intent zzt(String p3, String p4)
    {
        android.content.Intent v0_1 = new android.content.Intent("android.intent.action.VIEW");
        int v1_1 = android.net.Uri.parse("market://details").buildUpon().appendQueryParameter("id", p3);
        if (!android.text.TextUtils.isEmpty(p4)) {
            v1_1.appendQueryParameter("pcampaignid", p4);
        }
        v0_1.setData(v1_1.build());
        v0_1.setPackage("com.android.vending");
        v0_1.addFlags(524288);
        return v0_1;
    }

Method com.google.android.gms.common.internal.zzak.<clinit>() calling method android.net.Uri.parse()


    static zzak()
    {
        android.net.Uri v0_3 = android.net.Uri.parse("https://plus.google.com/");
        com.google.android.gms.common.internal.zzak.zzgau = v0_3;
        com.google.android.gms.common.internal.zzak.zzgav = v0_3.buildUpon().appendPath("circles").appendPath("find").build();
        return;
    }

Method com.google.android.gms.common.data.zzc.zzgb() calling method android.net.Uri.parse()


    protected final android.net.Uri zzgb(String p4)
    {
        android.net.Uri v0_2;
        android.net.Uri v0_1 = this.zzfqt.zzd(p4, this.zzfvx, this.zzfvy);
        if (v0_1 != null) {
            v0_2 = android.net.Uri.parse(v0_1);
        } else {
            v0_2 = 0;
        }
        return v0_2;
    }

Method com.google.android.gms.ads.identifier.zza.run() calling method android.net.Uri.parse()


    public final void run()
    {
        new com.google.android.gms.ads.identifier.zzc();
        String v2_4 = this.zzanb;
        String v3_4 = android.net.Uri.parse("https://pagead2.googlesyndication.com/pagead/gen_204?id=gmob-apps").buildUpon();
        String v4_3 = v2_4.keySet().iterator();
        while (v4_3.hasNext()) {
            RuntimeException v0_2 = ((String) v4_3.next());
            v3_4.appendQueryParameter(v0_2, ((String) v2_4.get(v0_2)));
        }
        String v2_3 = v3_4.build().toString();
        try {
            RuntimeException v0_8 = ((java.net.HttpURLConnection) new java.net.URL(v2_3).openConnection());
        } catch (RuntimeException v0_12) {
            String v3_5 = v0_12.getMessage();
            v2_3 = new StringBuilder(((String.valueOf(v2_3).length() + 32) + String.valueOf(v3_5).length())).append("Error while parsing ping URL: ").append(v2_3).append(". ").append(v3_5).toString();
            android.util.Log.w("HttpUrlPinger", v2_3, v0_12);
            return;
        } catch (RuntimeException v0_11) {
            String v3_3 = v0_11.getMessage();
            v2_3 = new StringBuilder(((String.valueOf(v2_3).length() + 27) + String.valueOf(v3_3).length())).append("Error while pinging URL: ").append(v2_3).append(". ").append(v3_3).toString();
            android.util.Log.w("HttpUrlPinger", v2_3, v0_11);
            return;
        } catch (RuntimeException v0_11) {
        }
        String v1_2 = v0_8.getResponseCode();
        if ((v1_2 < 200) || (v1_2 >= 300)) {
            android.util.Log.w("HttpUrlPinger", new StringBuilder((String.valueOf(v2_3).length() + 65)).append("Received non-success response code ").append(v1_2).append(" from pinging URL: ").append(v2_3).toString());
        }
        v0_8.disconnect();
        return;
    }

Method android.support.v4.media.MediaMetadataCompat.getDescription() calling method android.net.Uri.parse()


    public android.support.v4.media.MediaDescriptionCompat getDescription()
    {
        android.support.v4.media.MediaDescriptionCompat v19_13;
        if (this.mDescription == null) {
            String v12 = this.getString("android.media.metadata.MEDIA_ID");
            android.support.v4.media.MediaDescriptionCompat v0_4 = new CharSequence[3];
            CharSequence[] v16 = v0_4;
            CharSequence v8 = 0;
            android.net.Uri v9 = 0;
            CharSequence v6 = this.getText("android.media.metadata.DISPLAY_TITLE");
            if (android.text.TextUtils.isEmpty(v6)) {
                int v17 = 0;
                int v10 = 0;
                while ((v17 < v16.length) && (v10 < android.support.v4.media.MediaMetadataCompat.PREFERRED_DESCRIPTION_ORDER.length)) {
                    int v11 = (v10 + 1);
                    String v15_0 = this.getText(android.support.v4.media.MediaMetadataCompat.PREFERRED_DESCRIPTION_ORDER[v10]);
                    if (!android.text.TextUtils.isEmpty(v15_0)) {
                        int v18 = (v17 + 1);
                        v16[v17] = v15_0;
                        v17 = v18;
                    }
                    v10 = v11;
                }
            } else {
                v16[0] = v6;
                v16[1] = this.getText("android.media.metadata.DISPLAY_SUBTITLE");
                v16[2] = this.getText("android.media.metadata.DISPLAY_DESCRIPTION");
            }
            int v7_0 = 0;
            while (v7_0 < android.support.v4.media.MediaMetadataCompat.PREFERRED_BITMAP_ORDER.length) {
                String v15_1 = this.getBitmap(android.support.v4.media.MediaMetadataCompat.PREFERRED_BITMAP_ORDER[v7_0]);
                if (v15_1 == null) {
                    v7_0++;
                } else {
                    v8 = v15_1;
                    break;
                }
            }
            int v7_1 = 0;
            while (v7_1 < android.support.v4.media.MediaMetadataCompat.PREFERRED_URI_ORDER.length) {
                String v15_2 = this.getString(android.support.v4.media.MediaMetadataCompat.PREFERRED_URI_ORDER[v7_1]);
                if (android.text.TextUtils.isEmpty(v15_2)) {
                    v7_1++;
                } else {
                    v9 = android.net.Uri.parse(v15_2);
                    break;
                }
            }
            android.net.Uri v13 = 0;
            String v14 = this.getString("android.media.metadata.MEDIA_URI");
            if (!android.text.TextUtils.isEmpty(v14)) {
                v13 = android.net.Uri.parse(v14);
            }
            android.support.v4.media.MediaDescriptionCompat$Builder v4_1 = new android.support.v4.media.MediaDescriptionCompat$Builder();
            v4_1.setMediaId(v12);
            v4_1.setTitle(v16[0]);
            v4_1.setSubtitle(v16[1]);
            v4_1.setDescription(v16[2]);
            v4_1.setIconBitmap(v8);
            v4_1.setIconUri(v9);
            v4_1.setMediaUri(v13);
            if (this.mBundle.containsKey("android.media.metadata.BT_FOLDER_TYPE")) {
                android.os.Bundle v5_1 = new android.os.Bundle();
                v5_1.putLong("android.media.extra.BT_FOLDER_TYPE", this.getLong("android.media.metadata.BT_FOLDER_TYPE"));
                v4_1.setExtras(v5_1);
            }
            this.mDescription = v4_1.build();
            v19_13 = this.mDescription;
        } else {
            v19_13 = this.mDescription;
        }
        return v19_13;
    }

Method org.apache.cordova.engine.SystemWebView.setWebViewClient() calling method android.webkit.WebView.setWebViewClient()


    public void setWebViewClient(android.webkit.WebViewClient p2)
    {
        this.viewClient = ((org.apache.cordova.engine.SystemWebViewClient) p2);
        super.setWebViewClient(p2);
        return;
    }

Method org.apache.cordova.engine.SystemWebViewEngine.exposeJsInterface() calling method android.webkit.WebView.addJavascriptInterface()


    private static void exposeJsInterface(android.webkit.WebView p3, org.apache.cordova.CordovaBridge p4)
    {
        if (android.os.Build$VERSION.SDK_INT >= 17) {
            p3.addJavascriptInterface(new org.apache.cordova.engine.SystemExposedJsApi(p4), "_cordovaNative");
        } else {
            org.apache.cordova.LOG.i("SystemWebViewEngine", "Disabled addJavascriptInterface() bridge since Android version is old.");
        }
        return;
    }