You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cordova.apache.org by "Oleg Gryb (Updated) (JIRA)" <ji...@apache.org> on 2012/03/02 01:02:56 UTC
[jira] [Updated] (CB-291) PhonGap.exec Plugin Parameter is
Different on iOS and Android
[ https://issues.apache.org/jira/browse/CB-291?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Oleg Gryb updated CB-291:
-------------------------
Description:
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.
was:
plugins.xml on Android and PhoneGap.phlist 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.
> PhonGap.exec Plugin Parameter is Different on iOS and Android
> -------------------------------------------------------------
>
> Key: CB-291
> URL: https://issues.apache.org/jira/browse/CB-291
> Project: Apache Callback
> Issue Type: Bug
> Components: Android
> 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: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira