1 Reply Latest reply on Mar 22, 2014 11:23 AM by John T Smith

    Dreamweaver CS6 PhoneGap build with Camera support for Android Device

    mauprice Level 1

      I am trying to build a simple app that triggers the camera in my Samsung N7000 device.

       

      I have built the app using Dreamweaver CS6 using the builting phonegap build support.

       

      I am using the Windows version of Dreamweaver CS6.

       

      When the app is built it shows no errors but when the app is installed on the device it does not trigger  the camera.

       

      I can not seem to get this very basic app to trigger the camera.

       

      Any suggestions will be very much appreciated.

       

      //=======================================================================

       

      Below is the index.html file i have been using.

       

          <script src="phonegap.js"></script>

          <script type="text/javascript" charset="utf-8">

       

       

              // Called when capture operation is finished

              //

              function captureSuccess(mediaFiles) {

                  //var i, len;

                  //for (i = 0, len = mediaFiles.length; i < len; i += 1) {

                  //    //uploadFile(mediaFiles[i]);

                  //}

                  //navigator.notification.alert('Weee', null, 'Great success!');

              }

       

       

              // Called if something bad happens.

              //

              function captureError(error) {

                  //var msg = 'An error occurred during capture: ' + error.code;

                  //navigator.notification.alert(msg, null, 'Uh oh!');

              }

       

       

              // A button will call this function

              //

              function captureImage() {

                  // Launch device camera application,

                  // allowing user to capture up to 2 images

                  navigator.device.capture.captureImage(captureSuccess, captureError, { limit: 2 });

              }

       

       

              // Upload files to server

              function uploadFile(mediaFile) {

                  var ft = new FileTransfer(),

                      path = mediaFile.fullPath,

                      name = mediaFile.name;

       

       

                  ft.upload(path,

                      "http://my.domain.com/upload.php",

                      function (result) {

                          console.log('Upload success: ' + result.responseCode);

                          console.log(result.bytesSent + ' bytes sent');

                      },

                      function (error) {

                          console.log('Error uploading file ' + path + ': ' + error.code);

                      },

                      { fileName: name });

              }

          </script>

       

       

       

       

          <script type="text/javascript" charset="utf-8">

       

       

              var pictureSource;   // picture source

              var destinationType; // sets the format of returned value

       

       

              // Wait for Cordova to connect with the device

              //

              function onLoad() { document.addEventListener("deviceready", onDeviceReady, false); }

       

       

              // Cordova is ready to be used!

              //

              function onDeviceReady() {

                  pictureSource = navigator.camera.PictureSourceType;

                  destinationType = navigator.camera.DestinationType;

                  alert("device is ready");

              }

       

       

              // Called when a photo is successfully retrieved

              //

              function onPhotoDataSuccess(imageData) {

                  // Uncomment to view the base64 encoded image data

                  // console.log(imageData);

       

       

                  // Get image handle

                  //

                  var smallImage = document.getElementById('smallImage');

       

       

                  // Unhide image elements

                  //

                  smallImage.style.display = 'block';

       

       

                  // Show the captured photo

                  // The inline CSS rules are used to resize the image

                  //

                  smallImage.src = "data:image/jpeg;base64," + imageData;

              }

       

       

              // Called when a photo is successfully retrieved

              //

              function onPhotoURISuccess(imageURI) {

                  // Uncomment to view the image file URI

                  // console.log(imageURI);

       

       

                  // Get image handle

                  //

                  var largeImage = document.getElementById('largeImage');

       

       

                  // Unhide image elements

                  //

                  largeImage.style.display = 'block';

       

       

                  // Show the captured photo

                  // The inline CSS rules are used to resize the image

                  //

                  largeImage.src = imageURI;

              }

       

       

              // A button will call this function

              //

              function capturePhoto() {

                  // Take picture using device camera and retrieve image as base64-encoded string

                  navigator.camera.getPicture(onPhotoDataSuccess, onFail, {

                      quality: 50,

                      destinationType: destinationType.DATA_URL

                  });

              }

       

       

              // A button will call this function

              //

              function capturePhotoEdit() {

                  // Take picture using device camera, allow edit, and retrieve image as base64-encoded string 

                  navigator.camera.getPicture(onPhotoDataSuccess, onFail, {

                      quality: 20, allowEdit: true,

                      destinationType: destinationType.DATA_URL

                  });

              }

       

       

              // A button will call this function

              //

              function getPhoto(source) {

                  // Retrieve image file location from specified source

                  navigator.camera.getPicture(onPhotoURISuccess, onFail, {

                      quality: 50,

                      destinationType: destinationType.FILE_URI,

                      sourceType: source

                  });

              }

       

       

              // Called if something bad happens.

              //

              function onFail(message) {

                  alert('Failed because: ' + message);

              }

       

       

          </script>

      </head>

      <body onLoad="onLoad()">

          <button onclick="capturePhoto();">Capture Photo</button> <br><br>

          <button onclick="capturePhotoEdit();">Capture Editable Photo</button> <br><br>

          <button onclick="getPhoto(pictureSource.PHOTOLIBRARY);">From Photo Library</button><br><br>

          <button onclick="getPhoto(pictureSource.SAVEDPHOTOALBUM);">From Photo Album</button><br><br>

          <img style="display:none;width:60px;height:60px;" id="smallImage" src="" />

          <img style="display:none;" id="largeImage" src="" />

          <br><button onclick="captureImage();">Capture Image</button> <br>

       

       

      //=======================================================================================

       

      Below is the config.xml file i am using

       

      <?xml version="1.0" encoding="UTF-8" ?>

          <widget xmlns   = "http://www.w3.org/ns/widgets"

              xmlns:gap   = "http://phonegap.com/ns/1.0"

              id          = "com.phonegap.camera_test"

              versionCode = "11"

              version     = "1.1.0" >

       

       

       

       

      <name>bla</name>

       

       

      <description>

          bla

      </description>

       

       

      <author href="http://bla.github.com"

          email="test@gmail.com">

          bla

      </author>

       

       

      <icon src="icon.png" gap:role="default" />

       

       

      <feature name="http://api.phonegap.com/1.0/geolocation"/>

      <feature name="http://api.phonegap.com/1.0/network"/>

        <feature name="http://api.phonegap.com/1.0/file"/>

        <feature name="http://api.phonegap.com/1.0/camera"/>

        <feature name="http://api.phonegap.com/1.0/media"/>

        <feature name="http://api.phonegap.com/1.0/device"/>

       

       

        <feature name="http://api.phonegap.com/1.0/notification"/>

        <feature name="http://api.phonegap.com/1.0/battery"/>

       

       

      <preference name="orientation" value="portrait" />

      <preference name="webviewbounce" value="false" />

      <preference name="prerendered-icon" value="true" />

        <preference name="phonegap-version" value="3.1.0" />

       

       

        <preference name="fullscreen" value="false" />

        <preference name="stay-in-webview" value="false" />

        <preference name="ios-statusbarstyle" value="default" />

        <preference name="android-minSdkVersion" value="7" />

        <preference name="android-installLocation" value="internalOnly" />

        <preference name="target-device" value="universal" />

        <preference name="autohide-splashscreen" value="true" />

        <preference name="load-url-timeout" value="60000" />

        <preference name="show-splashscreen-spinner" value="true" />

        <preference name="show-splash-screen-spinner" value="true" />

        <preference name="allow-inline-media-playback" value="false" />

        <preference name="launch-mode" value="standard" />

       

       

       

       

        <plugin name="Capture" value="CDVCapture" />

        <plugin name="Camera" value="CDVCamera" />

      </widget>

       

       

      //=======================================================================================