OK, I just whacked everything and started over. I opened a terminal window on 
Macintosh and issued the following commands:

jmw-mini:~ jwargo$ cd dev
jmw-mini:dev jwargo$ cordova create test
jmw-mini:dev jwargo$ cd test
jmw-mini:test jwargo$ cordova platform add android ios
jmw-mini:test jwargo$ cordova plugin add 
https://git-wip-us.apache.org/repos/asf/cordova-plugin-camera.git
jmw-mini:test jwargo$ cordova prepare android
jmw-mini:test jwargo$ cordova prepare ios

At the end of the process, I looked at the config.xml in the iOS project's www 
folder and found the following:

<?xml version='1.0' encoding='utf-8'?>
<widget id="io.cordova.hellocordova" version="0.0.1" xmlns="http://www.w3.org/ns/widgets"; 
xmlns:cdv="http://cordova.apache.org/ns/1.0";>
    <name>HelloCordova</name>
    <description>
        A sample Apache Cordova application that responds to the deviceready 
event.
    </description>
    <author email="d...@callback.apache.org" href="http://cordova.io";>
        Apache Cordova Team
    </author>
    <content src="index.html" />
    <access origin="*" />
    <preference name="fullscreen" value="true" />
    <preference name="webviewbounce" value="true" />
</widget>

I even went in and forced an update to the config.xml in the cordova project's 
config.xml file and did another cordova prepare.

My changes came over to the config.xml, but no camera entry.

I'm running CLI 3.0.6.

On 8/22/2013 1:46 PM, Ian Clelland wrote:
On Thu, Aug 22, 2013 at 11:11 AM, Braden Shepherdson <bra...@chromium.org>wrote:

Are you sure you ran a "cordova prepare" in both cases? There should be a
<feature> tag for Camera on both platforms, as far as I know.


That was my thinking as well. I checked earlier, and there definitely is a
feature tag for iOS. (It's the only tag specified in plugin.xml, and it's
the only required change, according to the docs). I don't think plugin add
/ plugin remove should be manipulating config.xml in the platforms
directories -- that should be the job of `cordova prepare`.

Ian

On Thu, Aug 22, 2013 at 7:46 AM, John Wargo <j...@johnwargo.com> wrote:
I'm working on the part of my book that deals with the core APIs and I
need some guidance on how things are supposed to work.

I noticed that if I added the Camera API plugin to a project, that the
CLI
manages adding the camera feature to the android project's config.xml
file
in res/xml/config.xml. If I remove the plugin, the settings are removed
from the config.xml.

The documentation says that a setting is also required for the iOS
config.xml, but in my testing, the CLI doesn't make that change for me.
The
Xcode project's config.xml doesn't change as I add and remove the Camera
plugin.

So am I seeing an anomaly here or is this behavior as expected?  I
assumed
the CLI would take care of everything, but my testing here says
otherwise.
How's this supposed to work or what must the developer do? It doesn't
make
sense that the CLI would do this for Android and not iOS.


Reply via email to