2012-12-27 1 views
2

저는 카메라로 촬영 한 사진을 사용자 정의 폴더에 저장하는 카메라 앱을 사용하고 있습니다. 내가 중복 된 문제를 발견하지 못했다는 별난 오류가 발생했습니다. 내 응용 프로그램은 필요에 따라 폴더에 그림을 저장하고 저장하지만 이미지는 볼 수 없습니다. 이것에 대한 더 이상한 부분은 카메라 샷 폴더 (내 전화기의 기본 그림 저장 지점)에 저장된 이미지의 복사본을 볼 수 있다는 것입니다. 코드를 여러 가지 방법으로 수정하려고 시도했지만 여전히 동일한 결과를 얻고 있습니다. 아래는 제 코드입니다. 어떤 도움이라도 대단히 감사하겠습니다! 감사합니다.안드로이드 카메라 이미지를 사용자 정의 폴더에서 볼 수 없음

camera.setOnClickListener(new View.OnClickListener() {    
       public void onClick(View v) { 
        // TODO Auto-generated method stub 

        i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 

        String name = Environment.getExternalStorageDirectory().toString(); 
         File mainFolder = new File(name + "/Filename/");  
          mainFolder.mkdirs(); 
          Random generator = new Random(); 
          int random = 10000; 
          random = generator.nextInt(random); 
          String fileName = "Image-"+ random +".jpg"; 
          File file = new File (mainFolder, fileName); 
          if (file.exists()) file.delete(); 
          try { 
            FileOutputStream stream = new FileOutputStream(file); 
            bmp.compress(Bitmap.CompressFormat.JPEG, 90, stream); 
            stream.flush(); 
            stream.close(); 

          } catch (Exception e) { 
            e.printStackTrace(); 
          } 

        startActivityForResult(i, cameraData); 
       } 

      }); 

답변

0

알아 냈습니다. URI가 누락되었습니다. 다음은이 문제에 부딪 힐 사람을위한 업데이트 된 코드입니다.

camera.setOnClickListener(new View.OnClickListener() {    
      public void onClick(View v) { 
       // TODO Auto-generated method stub 

       i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 

       String name = Environment.getExternalStorageDirectory().toString(); 
        File mainFolder = new File(name + "/Filename/");  
         mainFolder.mkdirs(); 
         Random generator = new Random(); 
         int random = 10000; 
         random = generator.nextInt(random); 
         String fileName = "Image-"+ random +".jpg"; 
         File file = new File (mainFolder, fileName); 
         Uri uriSavedImage = Uri.fromFile(file); 
         i.putExtra("output", uriSavedImage); 

       startActivityForResult(i, cameraData); 
      } 

     }); 
관련 문제