拍照后如何打开android图库?
How to open android gallery after taking picture?
有没有办法打开设备图库,例如单击类型文件的输入和 select 刚用设备相机拍摄的照片?
我的问题是我已经有一个文件输入,但现在当我点击它时我打开相机拍照。 select我刚拍的照片上传后可以打开设备图库吗?
现在我正在使用 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);
}
});
})
或者有没有办法让照片像我有文件输入和 select 来自画廊时一样拍摄?
编辑:
我找到了解决问题的另一种方法,无需在拍照后打开图库。
我得到了像现在这样的图像,是 base64 格式。我使用 AJAX 将其传递给 PHP,然后使用 base64_decode()
对其进行解码,然后使用 file_get_contents()
将其保存到服务器,之后进行非常基本的保存数据库的路径。就是这样。成功。
虽然我似乎无法找到在我的设备上拍摄的照片。有谁知道它可以存储在哪里。还是拍照后必须手动存储?
$('#file_input').on('click', function(e){
e.preventDefault();
navigator.camera.getPicture(onSuccess, onFail, {
quality: 100,
destinationType: Camera.DestinationType.FILE_URI,
sourceType: 2, // 1 for camera, 2 for gallery
allowEdit: true, // Can edit the pictures and lets the user pick gallery app
mediaType: Camera.MediaType.PICTURE,
encodingType: Camera.EncodingType.JPEG,
popoverOptions: CameraPopoverOptions,
// targetWidth: 500,
// targetHeight: 500,
saveToPhotoAlbum: false,
correctOrientation: true // false: switches the height and width });
});
function onSuccess(imageData) {
// here I can upload imageData to the server
}
function onFail(message) {
alert('Failed because: ' + message);
}
});
我觉得你没问题 android side.You 在 base64 中获取图像 encoded.Now 这里是 link 你可以找到如何将图像移动到所需位置的方法在服务器上,当你完成时,你可以在数据库中存储该文件夹的路径
通过这种方式,您的数据库性能不会受到影响,因为您将只在数据库中存储路径
要获取捕获的图像,请直接按照此 link 并查看给出的答案
奥古斯托·皮恰尼
有没有办法打开设备图库,例如单击类型文件的输入和 select 刚用设备相机拍摄的照片?
我的问题是我已经有一个文件输入,但现在当我点击它时我打开相机拍照。 select我刚拍的照片上传后可以打开设备图库吗?
现在我正在使用 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);
}
});
})
或者有没有办法让照片像我有文件输入和 select 来自画廊时一样拍摄?
编辑:
我找到了解决问题的另一种方法,无需在拍照后打开图库。
我得到了像现在这样的图像,是 base64 格式。我使用 AJAX 将其传递给 PHP,然后使用 base64_decode()
对其进行解码,然后使用 file_get_contents()
将其保存到服务器,之后进行非常基本的保存数据库的路径。就是这样。成功。
虽然我似乎无法找到在我的设备上拍摄的照片。有谁知道它可以存储在哪里。还是拍照后必须手动存储?
$('#file_input').on('click', function(e){
e.preventDefault();
navigator.camera.getPicture(onSuccess, onFail, {
quality: 100,
destinationType: Camera.DestinationType.FILE_URI,
sourceType: 2, // 1 for camera, 2 for gallery
allowEdit: true, // Can edit the pictures and lets the user pick gallery app
mediaType: Camera.MediaType.PICTURE,
encodingType: Camera.EncodingType.JPEG,
popoverOptions: CameraPopoverOptions,
// targetWidth: 500,
// targetHeight: 500,
saveToPhotoAlbum: false,
correctOrientation: true // false: switches the height and width });
});
function onSuccess(imageData) {
// here I can upload imageData to the server
}
function onFail(message) {
alert('Failed because: ' + message);
}
});
我觉得你没问题 android side.You 在 base64 中获取图像 encoded.Now 这里是 link 你可以找到如何将图像移动到所需位置的方法在服务器上,当你完成时,你可以在数据库中存储该文件夹的路径
通过这种方式,您的数据库性能不会受到影响,因为您将只在数据库中存储路径 要获取捕获的图像,请直接按照此 link 并查看给出的答案 奥古斯托·皮恰尼