如何解码和保存捕获图像并在gridview中显示

时间:2013-04-22 12:28:52

标签: android

我想将捕获的图像保存在我的应用程序内存中并在gridview中查看但是当我捕获图像显示时崩溃我该怎么办?我如何解码捕获的图像?我想将捕获的图像保存在我的应用程序内存中(“data / data / com.myexample / files \ CameraRoll \”);我该怎么办?请帮帮我

  Private final int CAMERA_PICTURE=1;
  public final String IMAGE_CAPTURE_NAME=System.currentTimeMillis()+".jpeg";  


  File Cameraroll =new file(getFileDir(),"CameraRoll");
  if(CameraRoll.esixts() && CameraRoll.isDirectory())
 {

}
 else 
{
CameraRoll.mkdir
 }

  Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
 intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File  
  (cameraRoll+"/",IMAGE_CAPTURE_NAME))););
      startActivityForResult(intent, Camera_PICTURE);

protected void onActivityResult(int requestCode, int resultCode, Intent data) {  

   super.onActivityResult(requestCode,resultCode,data);
        if (requestCode == Camera_PICTURE) {  
            Bitmap photo = (Bitmap) data.getExtras().get("data"); 
                       }  
    }

1 个答案:

答案 0 :(得分:0)

从您的代码中移除intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File
(cameraRoll+"/",IMAGE_CAPTURE_NAME))););
,您就可以在Bitmap中获得onActivityResult

要存储图像,您必须手动执行。您可以将位图转换为Database并将其存储在byte array中的bool数据类型或Databasesdcard中的任何文件中,以将其保存在phone's memory中{1}}。