cordova-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Cordova Wiki] Update of "Platform Engine" by jbondc
Date Thu, 05 Dec 2013 14:34:17 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Cordova Wiki" for change notification.

The "Platform Engine" page has been changed by jbondc:
https://wiki.apache.org/cordova/Platform%20Engine?action=diff&rev1=1&rev2=2

  
  == Problem ==
  
- There's no clear definition of what defines a Cordova platform. Is it an OS? Is it a rendering
engine on top of an OS? Anything that satisfies the Cordova api?
+ There's no clear definition of a Cordova platform. Is it an OS? Is it a rendering engine
on top of an OS? Anything that satisfies the Cordova api?
  
- As of this writing, there's currently 4 platforms officially supported (ios, android, windows8,
blackberry10) and an increasing number of additional platforms.
+ As of this writing, there's 4 platforms officially supported (ios, android, windows8, blackberry10)
and an increasing number of additional platforms.
  
- In those 4 platforms, Android and Windows 8 have already evolved where several rendering
engines are available:
+ In those 4 platforms, Android and Windows 8 have evolved where several rendering engines
are available:
  
  === Android ===  
- WebView
+  * WebView
- ChromeView
- GeckoView
+  * [[https://github.com/pwnall/chromeview|ChromeView]] (working build possible from KitKat
release)
+  * [[http://people.mozilla.org/~mfinkle/geckoview/|GeckoView]]
- Crosswalk [2]: https://github.com/crosswalk-project/crosswalk-cordova-android
+  * [[https://github.com/crosswalk-project/crosswalk-cordova-android|Crosswalk]] 
  
  === Windows 8 === 
- WinJS 1.0
+  * WinJS 1.0
- WinJS 2.0 (Windows 8.1)
+  * WinJS 2.0 (Windows 8.1)
  
  Since plugins are tied to particular platform, it makes testing of plugins hard as the number
of platforms increases. The state of plugins feels the "Wild Wild West". 
  
- TODO: Talk about newer platforms based on Android or Chromium
+ TODO: Talk about newer platforms based on Android or Chromium. Distinguish HTML5/web rendering
& native functionality of the OS (hardware etc...).
  
  == Solutions ==
  
- a) Define as platform as an OS that satisfies a core set of Cordova apis. 
+ Define as platform as:
+ 
+ '''A) An OS that satisfies the core Cordova apis.'''
  
  Keep a few core platforms but use a new 'engine' flag
  
  e.g. cli perspective
+ {{{
- > cordova prepare android                                              #uses WebView
of OS
+ # cordova prepare android                       #uses WebView of OS
- > cordova prepare android -engine crosswalk           #uses Crosswalk
+ # cordova prepare android -engine crosswalk     #uses Crosswalk
- > cordova prepare android -engine ChromeView     #uses ChromeView bundled jar
+ # cordova prepare android -engine ChromeView    #uses ChromeView bundled jar
+ }}}
  
+ {{{
- > cordova prepare windows8
+ # cordova prepare windows8
- > cordova prepare windows8 -engine v8.1              #uses/injects 8.1  code
+ # cordova prepare windows8 -engine v8.1         #uses/injects 8.1  code
- > cordova prepare windows8 -engine crosswalk    #uses Crosswalk?
+ # cordova prepare windows8 -engine crosswalk    #uses Crosswalk?
+ }}}
  
+ '''B) An OS or engine that satisfies the core Cordova apis.'''
- 
- b) Define as platform as anything that satisfies a core set of Cordova apis. 
  
  Make platforms 'compatible'
  
  crosswalk-cordova-android 'compatibleWith' cordova-android
  windows81 'compatibleWith' windows8
  
- Disadvantages:
+ '''Disadvantages:'''
- - More 'platforms', overwhelming for user
+  * More 'platforms', overwhelming for user
- - More code to maintain
+  * More code to maintain
+ 
+ '''C) ? '''
  
  == Q & A ==
  

Mime
View raw message