List of usage examples for android.webkit WebView getClass
@HotSpotIntrinsicCandidate public final native Class<?> getClass();
From source file:io.selendroid.server.model.SelendroidWebDriver.java
private void configureWebView(final WebView view) { ServerInstrumentation.getInstance().getCurrentActivity().runOnUiThread(new Runnable() { @Override// www.j a v a 2s. c om public void run() { try { view.clearCache(true); view.clearFormData(); view.clearHistory(); view.setFocusable(true); view.setFocusableInTouchMode(true); view.setNetworkAvailable(true); // need to check the class name rather than checking instanceof // since when it is not an instanceof, it likely means the app under test // does not contain the Cordova project and this will cause a RuntimeException if (view.getClass().getSimpleName().equalsIgnoreCase("CordovaWebView")) { CordovaWebView webview = (CordovaWebView) view; CordovaInterface ci = null; chromeClient = new ExtendedCordovaChromeClient(null, webview); } else { chromeClient = new SelendroidWebChromeClient(); } view.setWebChromeClient(chromeClient); WebSettings settings = view.getSettings(); settings.setJavaScriptCanOpenWindowsAutomatically(true); settings.setSupportMultipleWindows(true); settings.setBuiltInZoomControls(true); settings.setJavaScriptEnabled(true); settings.setAppCacheEnabled(true); settings.setAppCacheMaxSize(10 * 1024 * 1024); settings.setAppCachePath(""); settings.setDatabaseEnabled(true); settings.setDomStorageEnabled(true); settings.setGeolocationEnabled(true); settings.setSaveFormData(false); settings.setSavePassword(false); settings.setRenderPriority(WebSettings.RenderPriority.HIGH); // Flash settings settings.setPluginState(WebSettings.PluginState.ON); // Geo location settings settings.setGeolocationEnabled(true); settings.setGeolocationDatabasePath("/data/data/selendroid"); } catch (Exception e) { SelendroidLogger.error("Error configuring web view", e); } } }); }
From source file:com.baidu.cafe.local.record.WebElementRecorder.java
/** * @param webView//from w w w. ja va 2 s .c o m * @return */ private WebViewClient getOriginalWebViewClient(final WebView webView) { // save old WebViewClient WebViewClient mWebViewClient = null; try { // print("Build.VERSION.SDK_INT : " + Build.VERSION.SDK_INT); if (Build.VERSION.SDK_INT > 14) { Object originalWebViewClassic = viewRecorder.getLocalLib().invoke(webView, "android.webkit.WebView", "getWebViewProvider", new Class[] {}, new Object[] {}); Object originalCallbackProxy = viewRecorder.getLocalLib().getField(originalWebViewClassic, null, "mCallbackProxy"); mWebViewClient = (WebViewClient) viewRecorder.getLocalLib().getField(originalCallbackProxy, null, "mWebViewClient"); } else { print("getClass:" + webView.getClass()); mWebViewClient = (WebViewClient) viewRecorder.getLocalLib().invoke(webView, "android.webkit.WebView", "getWebViewClient", new Class[] {}, new Object[] {}); } } catch (SecurityException e) { e.printStackTrace(); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (NoSuchFieldException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (NoSuchMethodException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } return mWebViewClient; }