incubator-callback-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Filip Maj (Commented) (JIRA)" <>
Subject [jira] [Commented] (CB-291) PhonGap.exec Plugin Parameter is Different on iOS and Android
Date Fri, 02 Mar 2012 00:08:58 GMT


Filip Maj commented on CB-291:

Yep, you are absolutely right. We are in the process of consolidating the different labels
for plugins, the differing interfaces to exec and the different implementations of each core
Cordova plugin.

The root of these efforts are in the cordova-js project, which is a unified JavaScript layer
for all Cordova platforms. That is over here:;a=summary

The above is already used in the latest Cordova-Android implementation.

Next step is integrating iOS into this. This is going to be a significant chunk of work as
a lot of the plugin implementations are completely different. I am chugging along on this
work on a fork of the repo in a branch on my GitHub repository here:

The BlackBerry progress on this is a bit farther along but will not land for 1.5 (much more
likely for 1.6).

Let me know if you want to help out with these efforts!
> PhonGap.exec Plugin Parameter is Different on iOS and Android
> -------------------------------------------------------------
>                 Key: CB-291
>                 URL:
>             Project: Apache Callback
>          Issue Type: Bug
>          Components: Android, CordovaJS, iOS
>    Affects Versions: 1.4.0
>         Environment: iOS, Android, Mac OSX 10.7
>            Reporter: Oleg Gryb
>            Assignee: Joe Bowser
> plugins.xml on Android and PhoneGap.plist are used to define a new plugin. They both
use a short name (e.g. MyPlugin) and a fully qualified name (e.g. com.MyCompany.MyPlugin)
to describe a plugin, however the meaning of the parameter #3 in PhoneGap.exec function is
different. In Android case you need to write:
> PhoneGap.exec(success, error, "MyPlugin", "method", [params]);
> while in iOS case id should be:
> PhoneGap.exec(success, error, "com.MyCompany.MyPlugin", "method", [params]);
> It results in necessity of having two different JS files with custom plugin definitions,
which could be avoided if we use the same convention on both platforms. I think, using FQN
is a better option and that's why it should be fixed on Android.
> A work around to avoid deploying two different JS files is to use something like this
in plugins.xml on Android:
> <plugin name="com.MyCompany.MyPlugin" value="com.MyCompany.MyPlugin"/>
> It works, but it looks really ugly.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message