Search code examples
androidcordovasteroids

Saving photo to phone Gallery w/ Cordova


Trying to create a simple app that saves a photo to the phone's Photo Gallery. The photo doesn't appear to get saved to the Gallery, but I don't have any error messages. Using steroids as well.

Here's my application.js:

function cameraGetPicture() {
    navigator.camera.getPicture(imageReceived, cameraFail, {
      quality: 50,
      destinationType: Camera.DestinationType.FILE_URI,
      allowEdit: false,
      correctOrientation: true,
      targetWidth: 600
    });
  }

 function imageReceived(imageURI) {
    var image = document.querySelector('img#myImage');
    image.src = imageURI;
    imageURI = new steroids.File({
      path: "image.png",
      relativeTo: steroids.app.userFilesPath
    });
  }

  function cameraFail(message) {
    alert("Camera error: " + message);
  }

Solution

  • Just add following property to Object which you are passing to navigator.camera.getPicture()

    saveToPhotoAlbum: true

    Your code will look like:

    navigator.camera.getPicture(imageReceived, cameraFail, {
          quality: 50,
          destinationType: Camera.DestinationType.FILE_URI,
          allowEdit: false,
          correctOrientation: true,
          targetWidth: 600,
          saveToPhotoAlbum: true
        });
    

    This works for me in both android & iOS. Hopefully this will work for you.