拍照后如何打开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 并查看给出的答案 奥古斯托·皮恰尼