【发布时间】:2016-09-07 00:12:37
【问题描述】:
有没有办法打开设备库,例如单击类型文件的输入并选择刚刚用设备相机拍摄的照片?
我的问题是我已经有一个文件输入,但现在当我点击它时,我打开相机拍照。拍照后是否可以打开设备库,选择我刚拍的照片上传?
现在我正在使用 base 64 编码。我不想那样,因为我已经有一个 php 和 ajax 上传,我已经使用了普通图像。
我的代码:
$(document).ready(function(){
$('#file_input').on('click', function(e){
e.preventDefault();
navigator.camera.getPicture(onSuccess, onFail, {
quality: 100,
destinationType: Camera.DestinationType.DATA_URL
});
function onSuccess(imageData) {
// here I can upload imageData to the server
}
function onFail(message) {
alert('Failed because: ' + message);
}
});
})
或者有没有办法像我输入文件并从图库中选择一样获取刚刚拍摄的照片?
编辑:
我找到了另一种解决问题的方法,而无需在拍照后打开图库。
我得到了像现在这样的图像,采用 base64 格式。我使用 AJAX 将其传递给 PHP,然后使用 base64_decode() 对其进行解码,然后使用 file_get_contents() 将其保存到服务器,然后是数据库的基本保存路径。就是这样。成功。
虽然我似乎无法找到在我的设备上拍摄的照片。有谁知道它可以存储在哪里。还是拍照后必须手动保存?
【问题讨论】:
-
你可以直接获取拍摄的图像,为什么要在拍摄后打开画廊??
-
因为我得到了它,但它是用base64编码的,我不想像那样将它保存在数据库中。
-
但您可以将图像的路径保存到数据库中,这是将图像存储到数据库中的首选方式
-
如何获取路径?
-
您需要从 android 端传递位图并将其移动到服务器上所需的文件夹之一,并将该文件夹路径存储到您的数据库中
标签: javascript android cordova phonegap-plugins