webjay
webjay

Reputation: 5508

Phonegap captureImage does nothing

I've built my first iOS app and everything works but snapping photos. Below is my Phonegap config file and further down the JavaScript part that according to my understanding of the manual should let the user snap a photo.

When I call navigator.device.capture.captureImage nothing happens.

What am I missing?

<?xml version="1.0" encoding="UTF-8"?> 
<widget xmlns="http://www.w3.org/ns/widgets" xmlns:gap="http://phonegap.com/ns/1.0" id="dk.webcom.longhaul" version="1.0.0">

    <preference name="AllowInlineMediaPlayback" value="false" />
    <preference name="AutoHideSplashScreen" value="true" />
    <preference name="BackupWebStorage" value="cloud" />
    <preference name="DisallowOverscroll" value="false" />
    <preference name="EnableLocation" value="false" /><!-- DEPRECATED -->
    <preference name="EnableViewportScale" value="false" />
    <preference name="FadeSplashScreen" value="true" />
    <preference name="FadeSplashScreenDuration" value=".25" />
    <preference name="HideKeyboardFormAccessoryBar" value="false" />
    <preference name="KeyboardDisplayRequiresUserAction" value="true" />
    <preference name="KeyboardShrinksView" value="false" />
    <preference name="MediaPlaybackRequiresUserAction" value="false" />
    <preference name="ShowSplashScreenSpinner" value="true" />
    <preference name="SuppressesIncrementalRendering" value="false" />
    <preference name="TopActivityIndicator" value="gray" />

    <content src="index.html" />

    <plugins>
        <plugin name="Device" value="CDVDevice" />
        <plugin name="Logger" value="CDVLogger" />
        <!--<plugin name="Compass" value="CDVLocation" />-->
        <!--<plugin name="Accelerometer" value="CDVAccelerometer" />-->
        <plugin name="Camera" value="CDVCamera" />
        <plugin name="NetworkStatus" value="CDVConnection" />
        <!--<plugin name="Contacts" value="CDVContacts" />-->
        <!--<plugin name="Echo" value="CDVEcho" />-->
        <plugin name="File" value="CDVFile" />
        <plugin name="FileTransfer" value="CDVFileTransfer" />
        <plugin name="Geolocation" value="CDVLocation" />
        <plugin name="Notification" value="CDVNotification" />
        <!--<plugin name="Media" value="CDVSound" />-->
        <plugin name="Capture" value="CDVCapture" />
        <!--<plugin name="SplashScreen" value="CDVSplashScreen" />-->
        <!--<plugin name="Battery" value="CDVBattery" />-->
        <!--<plugin name="Globalization" value="CDVGlobalization" />-->
        <!--<plugin name="InAppBrowser" value="CDVInAppBrowser" />-->
    </plugins>

    <access origin="*" />

</widget>

Here is the JavaScript part that should open the camera.

        navigator.device.capture.captureImage @photoSuccess, @photoFail,
            limit: 1
        # navigator.camera.getPicture app.photoSuccess, app.photoFail,
        #   quality: 50
        #   destinationType: Camera.DestinationType.FILE_URI

Upvotes: 0

Views: 299

Answers (1)

webjay
webjay

Reputation: 5508

It seems I was missing <script src="cordova-2.7.0.js"></script> in index.html

Upvotes: 1

Related Questions