[ 
https://issues.apache.org/jira/browse/CB-9393?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15144477#comment-15144477
 ] 

ASF GitHub Bot commented on CB-9393:
------------------------------------

Github user jcesarmobile commented on a diff in the pull request:

    https://github.com/apache/cordova-docs/pull/498#discussion_r52730825
  
    --- Diff: www/docs/en/dev/guide/platforms/android/webview.md ---
    @@ -29,106 +29,73 @@ components can communicate with each other, see 
Application Plugins.
     If you're unfamiliar with Android, you should first familiarize
     yourself with the [Android Platform Guide](index.html) and have the latest 
Android
     SDK installed before you attempt the more unusual development option
    -of embedding a WebView.  Starting with Cordova 1.9, the Android
    -platform relies on a `CordovaWebView` component, which builds on a
    -legacy `CordovaActivity` component that pre-dates the 1.9 release.
    +of embedding a WebView.  Starting with Cordova 4.0, the Android
    +platform relies on a `SystemWebView` component.
     
     1. To follow these instructions, make sure you have the latest Cordova
        distribution. Download it from
        [cordova.apache.org](http://cordova.apache.org) and unzip its
        Android package.
     
    -1. Navigate to the Android package's `/framework` directory and run
    -   `ant jar`. It creates the Cordova `.jar` file, formed as
    -   `/framework/cordova-x.x.x.jar`.
    +1. Create a project in Android Studio
     
    -1. Copy the `.jar` file into the Android project's `/libs` directory.
    +1. Copy the framework directory into your project's root directory and 
name it
    +CordovaLib
    +
    +1. Add that project as a library project to your main project.
     
     1. Add the following to the application's `/res/xml/main.xml` file,
        with the `layout_height`, `layout_width` and `id` modified to suit
        the application:
     
    -        <org.apache.cordova.CordovaWebView
    +        <org.apache.cordova.SystemWebView
                 android:id="@+id/tutorialView"
                 android:layout_width="match_parent"
                 android:layout_height="match_parent" />
     
    -1. Modify the activity so that it implements the `CordovaInterface`.
    -   It should implement the included methods.  You may wish to copy
    -   them from `/framework/src/org/apache/cordova/CordovaActivity.java`,
    -   or else implement them on your own.  The following code fragment
    -   shows a basic application that relies on the interface. Note how
    -   the referenced view id matches the `id` attribute specified in the
    -   XML fragment shown above:
    -
    -        public class CordovaViewTestActivity extends Activity implements 
CordovaInterface {
    -            CordovaWebView cwv;
    -            /* Called when the activity is first created. */
    -            @Override
    -            public void onCreate(Bundle savedInstanceState) {
    -                super.onCreate(savedInstanceState);
    -                setContentView(R.layout.main);
    -                cwv = (CordovaWebView) findViewById(R.id.tutorialView);
    -                Config.init(this);
    -                cwv.loadUrl(Config.getStartUrl());
    -            }
    +1. Add the following code to setup your Activity so that you have an 
interface
     
    -1. If the application needs to use the camera, implement the
    -   following:
    +        private CordovaInterfaceImpl iface = new 
CordovaInterfaceImpl(this);
    +
    +1. Add the following to intialize the WebView
    +
    +        //Set up the webview
    +        ConfigXmlParser parser = new ConfigXmlParser();
    +        parser.parse(this);
    +
    +        SystemWebView webView = (SystemWebView) 
findViewById(R.id.WebViewComponent);
    +        webInterface = new CordovaWebViewImpl(new 
SystemWebViewEngine(webView));
    +        webInterface.init(iface, parser.getPluginEntries(), 
parser.getPreferences());
    +
    +        loadUrl(parser.getLaunchUrl());
    +
    +
    +1. Copy the application's HTML and JavaScript files to the Android
    +   project's `app/src/main/assets/www` directory.
    +
    +1. Copy the `config.xml` file from `/framework/res/xml` to the
    --- End diff --
    
    There is no config.xml on /framework/res/xml. I've found two, one on 
test/res/xml and another on /bin/templates/project/res/xml, I suppose the good 
one is the one on bin, right?


> Embedded use case is undocumented for Cordova-Android 4.0.x
> -----------------------------------------------------------
>
>                 Key: CB-9393
>                 URL: https://issues.apache.org/jira/browse/CB-9393
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Android
>    Affects Versions: 4.0.1
>            Reporter: Joe Bowser
>            Assignee: Joe Bowser
>             Fix For: 5.0.0
>
>
> We broke the embedded webview use case for Android 4.0.x. and it's currently 
> difficult to embed a webview without some gradle editing.  We should probably 
> work on getting the Embedded WebView use case to work out of the box for 
> Gradle, and in the meantime document all the workarounds for getting an 
> embedded webview in Android Studio to actually work.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org
For additional commands, e-mail: issues-h...@cordova.apache.org

Reply via email to