cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Braden Shepherdson <bra...@chromium.org>
Subject Re: About Cordova 3, plugins, and tools
Date Tue, 17 Sep 2013 14:45:09 GMT
There are several plugins where it's JS-only. You **do not need** "native"
code backing up the plugins. It can all be Javascript, if that works for
the platform. What you do need is to support the same
cordova.exec('SomePlugin', 'someFunction', [args, go, here]) interface in
your Javascript code. That is, in Tizen's implementation of cordova.exec,
you can have it call Javascript code. That Javascript code might just
handle the call, as in those BB10 plugins, or it could use NPRuntime or
MessagePort to call native code.

In terms of adding the platform to CLI, FirefoxOS was added recently; take
a look at those patches to see what you should change.

Braden


On Tue, Sep 17, 2013 at 10:15 AM, Ken Wallis <kwallis@blackberry.com> wrote:

> Bryan, Jeff, keep me honest here, but there are a few BlackBerry 10
> plugins that are almost (completely?) JS-only plugins.  For example, the
> BlackBerry 10 web view implements the W3C file system spec which is
> mimicked by the Cordova File API. So the BlackBerry 10 Cordova API for File
> is really a JS shim for 3.x as well.
>
> https://github.com/apache/cordova-plugin-file/tree/master/www/blackberry10
>
> --
>
> Ken Wallis
> Senior Product Manager – WebWorks
> BlackBerry
> 650-620-2404
>
> ________________________________________
> From: Plaquette, Paul [paul.plaquette@intel.com]
> Sent: Tuesday, September 17, 2013 9:43 AM
> To: dev
> Subject: About Cordova 3, plugins, and tools
>
> Hi folks,
>
> I need  help to better understand Cordova 3 plugins in order to upgrade
> Cordova Port on Tizen.
>
> Do Cordova 3 plugins have the same structure than PhoneGap Build plugins?
>
> Most platforms supported by Cordova have native plugins (native means
> native in the meaning of the host platform, java on android  (can they use
> NPK?) Objective C on iOS and so on…)
>
> I saw that communicating with the native side of a plugins is achieve
> through a plugin object and a plugin result object
>
> Tizen is mostly JavaScript.
>
> Now the SDK is delivered it appear that we might implement native plug in
> in C++ through two mechanism: NPRuntime, and MessagePort.
>
> NPRuntime is NPAPI.
>
> MessagePort is establishing a communication channel in between a web
> application, our plugin, and a native C++ background only application
> without a user interface. (I think is it a socket based mechanism, I have
> to check to insure of this)
>
> For that last mechanism we might have to rely on having such plugin and
> plugin result objects, as it is highly asynchronous.
>
> In order to support Cordova 3 on Tizen we need to support CLI and Plugman.
>
> Where could I find something to help me in that task?
>
> For example what are the part to update that relates to a specific
> platforms?
>
> Then we have to provide Cordova APIs plugins implementation on Tizen.
>
> These APIs are implemented until Cordova 2.9.x as JavaScript shim layers
> above the Tizen Web Runtime APIs.
>
> My first attempt upgrading this to Cordova 3 architecture would be to keep
> this JavaScript implementation: plugins as JavaScript plugins, shim layers
> on the Tizen Web Runtime API.
>
> Is there a kind of Cordova 3 plugin JavaScript framework that provides
> support?
>
> In doing this I wonder if I really need to provide a plugin and plugin
> result object?
>
> Then, if I do not need to provide such object I wonder where the shim layer
> is going to take place in the www part of the plug in or in the src part of
> the plugin  (I know we can use the config.xml file to set this)
>
>
> Cordially,
>
> Paul
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Paul Plaquette,
> Senior Software Engineer
> Intel Corporation SAS *
> *
> *SSG/OTC: Open Source Technology Center*
> France, Montpellier
> ---------------------------------------------------------------------
> This transmission (including any attachments) may contain confidential
> information, privileged material (including material protected by the
> solicitor-client or other applicable privileges), or constitute non-public
> information. Any use of this information by anyone other than the intended
> recipient is prohibited. If you have received this transmission in error,
> please immediately reply to the sender and delete this information from
> your system. Use, dissemination, distribution, or reproduction of this
> transmission by unintended recipients is not authorized and may be unlawful.
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message