`

相机获取图像并保存到指定sdcard目录

 
阅读更多


<!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
  • 大小: 35.2 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics