Search code examples
cordovaphonegap-plugins

Phonegap: save base64 image to gallery


I just wanna save an image base64 and open it on gallery. I don't want to get pictures from gallery or take pictures.

<img src="base64" />
<button>Save</button>

phonegap + angularjs

Thanks!


Solution

  • Solution:

    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fileSystem) {
    
      var fileTransfer = new FileTransfer();
      var uri = encodeURI("http://www.example.com/image");
      var path = fileSystem.root.toURL() + "appName/example.jpg";
    
      fileTransfer.download(
        uri,
        path,
        function(entry) {
          refreshMedia.refresh(path); // Refresh the image gallery
        },
        function(error) {
          console.log(error.source);
          console.log(error.target);
          console.log(error.code);
        },
        false,
        {
          headers: {
            "Authorization": "dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
          }
        }
      );
    
    });
    

    I needed to create a plugin to refresh the image gallery, because when you save an image on android device, this image does not appears on gallery. This plugin updates the image gallery.

    refreshMedia.refresh(path); // Refresh the image gallery
    

    Plugin: https://github.com/guinatal/refreshgallery