Example usage for org.apache.cordova.engine SystemWebViewEngine SystemWebViewEngine

List of usage examples for org.apache.cordova.engine SystemWebViewEngine SystemWebViewEngine

Introduction

In this page you can find the example usage for org.apache.cordova.engine SystemWebViewEngine SystemWebViewEngine.

Prototype

public SystemWebViewEngine(SystemWebView webView) 

Source Link

Usage

From source file:com.ionicframework.ionictest648609.MainActivity.java

License:Apache License

@Override
protected CordovaWebView makeWebView() {
    SystemWebView webView = (SystemWebView) findViewById(R.id.cordovaWebView);
    return new CordovaWebViewImpl(new SystemWebViewEngine(webView));
}

From source file:com.mobicage.rogerthat.cordova.CordovaActionScreenActivity.java

License:Apache License

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    Intent intent = getIntent();//from   www. ja  v a 2 s .c o  m
    mEmbeddedApp = intent.getStringExtra(EMBEDDED_APP);
    mEmbeddedAppId = intent.getStringExtra(EMBEDDED_APP_ID);

    mBrandingType = intent.getStringExtra(ActionScreenActivity.BRANDING_TYPE);
    mBrandingKey = intent.getStringExtra(ActionScreenActivity.BRANDING_KEY);
    mServiceEmail = intent.getStringExtra(ActionScreenActivity.SERVICE_EMAIL);
    mItemTagHash = intent.getStringExtra(ActionScreenActivity.ITEM_TAG_HASH);
    mItemLabel = intent.getStringExtra(ActionScreenActivity.ITEM_LABEL);
    mItemCoords = intent.getLongArrayExtra(ActionScreenActivity.ITEM_COORDS);
    mRunInBackground = intent.getBooleanExtra(ActionScreenActivity.RUN_IN_BACKGROUND, true);
    mContext = intent.getStringExtra(ActionScreenActivity.CONTEXT);

    if (mEmbeddedAppId != null) {
        mType = CordovaAppType.DYNAMIC_EMBEDDED_APP;
    } else if (mEmbeddedApp == null) {
        mType = CordovaAppType.BRANDING;
    } else {
        mType = CordovaAppType.PACKAGED_EMBEDDED_APP;
    }

    setContentViewWithoutNavigationBar(R.layout.cordova_action_screen);

    final int configId = getCordovaConfigId();
    final ConfigXmlParser parser = new ConfigXmlParser();
    parser.parse(this.getResources().getXml(configId));

    mBranding = (SystemWebView) findViewById(R.id.branding);
    SystemWebViewEngine parentEngine = new SystemWebViewEngine(mBranding);
    mBranding.setWebChromeClient(new CordovaWebChromeClient(parentEngine));
    mWebInterface = new CordovaWebViewImpl(parentEngine);
    mWebInterface.init(mCordovaInterface, parser.getPluginEntries(), parser.getPreferences());

    setTitle(mItemLabel);
    setActivityName("click|" + mItemTagHash);
}

From source file:com.qianmi.qmapp.MainActivity.java

License:Apache License

@Override
protected CordovaWebView makeWebView() {
    webView = (SystemWebView) findViewById(R.id.cordovaWebView);
    return new CordovaWebViewImpl(new SystemWebViewEngine(webView));
}

From source file:io.selendroid.server.model.SelendroidWebDriver.java

License:Apache License

private void configureWebView(final WebView view) {
    ServerInstrumentation.getInstance().getCurrentActivity().runOnUiThread(new Runnable() {

        @Override/*from   w w w .  j a va  2  s .  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 if (view.getClass().getSimpleName().equalsIgnoreCase("SystemWebView")) {
                    SystemWebView webview = (SystemWebView) view;
                    SystemWebViewEngine webEngine = new SystemWebViewEngine(webview);
                    chromeClient = new ExtendedSystemWebChromeClient(webEngine);
                } else {
                    chromeClient = new SelendroidWebChromeClient();
                }
                view.setWebChromeClient(chromeClient);
                // set handlers to indicate whether a page has started/done loading
                view.setWebViewClient(new WebViewClient() {
                    @Override
                    public void onPageStarted(WebView view, String url, Bitmap favicon) {
                        synchronized (syncObject) {
                            pageStartedLoading = true;
                            syncObject.notify();
                        }
                    }

                    @Override
                    public void onPageFinished(WebView view, String url) {
                        synchronized (syncObject) {
                            pageDoneLoading = true;
                            syncObject.notify();
                        }
                    }
                });

                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);
            }
        }
    });
}