Skip to content

Instantly share code, notes, and snippets.

@manjeshpv
Last active August 29, 2015 14:03
Show Gist options
  • Save manjeshpv/1f7718c1dbeddba631a1 to your computer and use it in GitHub Desktop.
Save manjeshpv/1f7718c1dbeddba631a1 to your computer and use it in GitHub Desktop.
Phonegap Cordova File Upload and Download
<!DOCTYPE html>
<html>
<!-- phonegap plugin add org.apache.cordova.camera
phonegap plugin add org.apache.cordova.file-transfer
Copy JS Files from
-->
<head>
<meta charset="utf-8" />
<meta name="format-detection" content="telephone=no" />
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
<title>Phonegap Cordova Upload & Download</title>
</head>
<body>
<div class="app">
<h1> <a onClick="uploadFromGallery();">Upload from Gallery</a> </h1>
<h1> <a onClick="downloadToSDCARD();">Download to Gallery</a> </h1>
</div>
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/android/FileSystem.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/DirectoryEntry.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/DirectoryReader.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/Entry.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/File.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/FileEntry.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/FileError.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/FileReader.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/FileSystem.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/fileSystemPaths.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/fileSystems.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/fileSystems-roots.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/FileUploadOptions.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/FileUploadResult.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/FileWriter.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/Flags.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/LocalFileSystem.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/Metadata.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/ProgressEvent.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/requestFileSystem.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file/resolveLocalFileSystemURI.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file-transfer/FileTransfer.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.file-transfer/FileTransferError.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.camera/Camera.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.camera/CameraConstants.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.camera/CameraPopoverHandle.js"></script>
<script type="text/javascript" src="lib/org.apache.cordova.camera/CameraPopoverOptions.js"></script>
<script type="text/javascript">
document.addEventListener('deviceready', function(){alert("hello");}, false);
function SDCARD() {
var ft = new FileTransfer();
ft.download(encodeURI("http://domain.com/sample.pdf"),'/sdcard/sample1.pdf' , winf, failf,true,{});
}
function winf(entry) {
alert("download complete: " + entry.toURL());
alert(JSON.stringify(entry));
}
function failf(error) {
alert("download error source " + error.source);
console.log("download error target " + error.target);
console.log("upload error code" + error.code);
}
function uploadFromGallery() {
// Retrieve image file location from specified source
navigator.camera.getPicture(uploadPhoto,
function(message) { alert('get picture failed'); },
{ quality: 50,
destinationType: navigator.camera.DestinationType.FILE_URI,
sourceType: navigator.camera.PictureSourceType.PHOTOLIBRARY }
);
}
function uploadPhoto(imageURI) {
alert(imageURI);
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1)+'.png';
options.mimeType="text/plain";
var params = new Object();
options.params = params;
var ft = new FileTransfer();
ft.upload(imageURI, encodeURI("http://ssibm.edu.in/save.php"), win, fail, options);
}
function win(r) {
console.log("Code = " + r.responseCode);
console.log("Response = " + r.response);
console.log("Sent = " + r.bytesSent);
}
function fail(error) {
alert("An error has occurred: Code = " + error.code);
console.log("upload error source " + error.source);
console.log("upload error target " + error.target);
}
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment