<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>Test</title> <script language="javascript" src="phonegap.js"></script> <script language="javascript" > function $(id){ return document.getElementById(id); } var pictureSource;//图片来源 var destinationType; //设置返回值的格式 var m_imageURI; //选择的图像文件 //等待设备准备好 document.addEventListener("deviceready", onDeviceReady, false); //设备已经准备好了 function onDeviceReady() { toLog("onDeviceReady!"); pictureSource=navigator.camera.PictureSourceType; destinationType=navigator.camera.DestinationType; } //从相机获取图像,返回的是URI function getCamera(){ navigator.camera.getPicture(onSuccessPic, onFailPic, { quality: 50, destinationType: destinationType.FILE_URI }); } //从图库中获取图像 function getLocalPic(){ navigator.camera.getPicture(onSuccessPic, onFailPic, { quality: 50, destinationType: destinationType.FILE_URI,sourceType: pictureSource.PHOTOLIBRARY }); } //获取图像成功 function onSuccessPic(imageURI) { //var image = document.getElementById('myImage'); //image.src = imageURI; toLog("pic: "+ imageURI); m_imageURI = imageURI; //转换URI到全路径 window.resolveLocalFileSystemURI(imageURI, gotFileEntry, onFileFail); } //获取图像失败 function onFailPic(message) { //alert('Failed because: ' + message); toLog(message); } //转换URI到全路径 function gotFileEntry(fileEntry) { fpath = fileEntry.fullPath; toLog("fullpath: "+ fpath); $("path").value = fpath; $("image").src = fpath; } //文件操作失败 function onFileFail(error) { toLog("error code: "+ error.code); }; //移动图像 function toMove(){ DoFile(true); } //负责图像 function toCopy(){ DoFile(false); } // function DoFile(ismove){ var fname = $("name").value; //新的文件名称 var dirname = $("dir").value; //目标路径 //开始操作文件 //通过本地URI参数检索DirectoryEntry或FileEntry window.resolveLocalFileSystemURI(m_imageURI, function(fileEntry){ //请求持久化的文件系统 window.requestFileSystem(LocalFileSystem.PERSISTENT,0, function(fileSystem){ //如果目录不存在就创建 var direc = fileSystem.root.getDirectory(dirname, {create: true}, function( parent ){ toLog("Parent Name:" + parent.name +"<br/>Full Path:"+ parent.fullPath); //移动文件 if(ismove){ fileEntry.moveTo(parent/*fileSystem.root*/, fname, function(){ toLog("Move OK: "+ parent.fullPath +"/"+ fname ); }, onFileFail); }else{ //复制文件 fileEntry.copyTo(parent/*fileSystem.root*/, fname, function(){ toLog("Copy OK: "+ parent.fullPath +"/"+ fname ); }, onFileFail); }//end if },onFileFail); }, onFileFail); },onFileFail); } //显示日志 function toLog(s){ strs = $("logs").innerHTML; strs = strs + "<br/>" + s ; $("logs").innerHTML = strs; } </script> </head> <body> <button onClick="getCamera();"> Camera </button> <button onClick="getLocalPic()"> LocalPic </button> <br/><br/> Path: <input type="text" id="path" value=""/><br/><br/> LocalDir: <input type="text" id="dir" value="/sdcard/abcde"/><br/> FileName: <input type="text" id="name" value="testtest.jpg"/><br/> <br/> <button onClick="toMove();"> Move </button> <button onClick="toCopy();"> Copy </button> <div id="logs"> Log: </div> <img src="" id="image" /> </body> </html>
来自 http://hi.baidu.com/xiaoguo_me/item/5f3b5f3c938b46bd124b1401