Description:
  Currently, web developers can only use command-line tools to package their 
Crosswalk WebApps, e.g. make_apk.py for Android. Our goal is to enable building 
crosswalk WebApps in Eclipse. With this feature, developers create an Crosswalk 
project and edit the Web stuff in Eclipse then be exported as a required 
package, for example "*.apk" for Android. This feature can be extended to all 
platforms in the feature, but we want to enable it for Android for the first 
step.

Affected component:
  It will be a sub-project under crosswalk-project, so no component in current 
Crosswalk repo will be affected.

Related feature: (Jira ID)
https://crosswalk-project.org/jira/browse/XWALK-636

Target Release: (Crosswalk N)
  Crosswalk 5

Implementation details:
  The general idea is that, we provide an Eclipse plugin to add a new project 
type. Developer need to download the plugin and then can create the new type of 
project(crosswalk project), the project can be edited and then packaged to 
signed APK. As we need to use libs and tools from Android SDK, so our Eclipse 
plugin need Android SDK as its precondition. So ADT bundle version or Eclipse 
and ADT plugin version will be required by the plugin.

1.      stand-alone project type  -- (required)
     Just a expose the web stuff to the developer, use Crosswalk manifest.json 
for project configuration. The directory tree of the new project just like XPK 
package. Developer will not see generated Activity, cannot edit Java code, they 
can only edit the web stuff in Eclipse. Web stuff will be wrapped with Java 
code when packaging and exporting the project.

2.      embedded or shared mode supporting -- (required)
     developers can select which mode they want to package the project in an 
exporting dialog. For embedded mode, developer need to specify needed resources 
and libs from local disk or maybe an on-line version.

3.      supporting Crosswalk permissions -- (required)
     Crossealk manifest.json will be used to configure the project, Crosswalk 
permissions will be used to authorize special access ability to WebApp, and 
these used permissions will be recorded in manifest.json and will be mapped to 
Android permission after wrapping and packaging the project. Currently the map 
haven't be determined yet, but we will catch up the newest map.

4.      different arch supporting -- (x86 required, arm Low priority)
     this just make sense to embedded mode. All possible options will be listed 
for selection in the exporting dialog. Error will be through if the required 
crosswalk library cannot be found in the specified resource and libs directory 
described in item 2.

5.      various application source supporting
     option1: new project created from Eclipse -- (required)
     option2: import from a local directory with manifest.json -- (required)
     option3: import from XPK package -- (low priority)

6.      external crosswalk extension supporting -- (Low priority)
     developers need to specify external crosswalk extensions when creating the 
project. First step, we will just support compiled extension(directory with 
*.js, *.jar, *.json), in the future raw Java files may be supported.


_______________________________________________
Crosswalk-dev mailing list
Crosswalk-dev@lists.crosswalk-project.org
https://lists.crosswalk-project.org/mailman/listinfo/crosswalk-dev

Reply via email to