나는 며칠 동안 안드로이드에서 사진을 찍으려고합니다. 아이디어는 이미지를 캡처 한 FTP에 파일을 업로드하는 것입니다. SurfaceView를 확장 한 클래스가 있습니다.이 뷰가 보이면, 장치의 후면 카메라 이미지를 재생합니다. 카메라의 이미지를 클릭하면 이미지를 JPEG 형식으로 유지하려고합니다.표면보기에서 JPG 파일을 얻으십시오 android
나는 수십개의 해결책을 시도했지만, 지금 당장 얻을 수있는 것은 JPEG입니다. 나는 옳은 방법으로 메신저를 생각하지만, 뭔가 빠져 있습니다. ,
try {
//create bitmap screen capture
Bitmap bitmap;
this.setDrawingCacheEnabled(true);
//Freezes the image
mCamera.stopPreview();
bitmap = Bitmap.createBitmap(getDrawingCache(), 0, 0, this.getLayoutParams().width, this.getLayoutParams().height);
this.setDrawingCacheEnabled(false);
//Create temp file
file = File.createTempFile("prueba", ".JPG", Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES));
//Copy bitmap content into file
FileOutputStream fos = new FileOutputStream(file);
bitmap.compress(CompressFormat.JPEG, 60, fos);
fos.flush();
fos.close();
//Free camera
mCamera.release();
mCamera = null;
}catch(Exception e){
e.printStackTrace();
}
mCamera 잘 맞는 this.layoutParams로 선택 폭과 높이를 복사 특정 크기로, android.hardware.Camera입니다 : 여기
나는 사용자 정의 클래스에 onClick 이벤트에서 사용하는 코드입니다 이 모든 것을 surfaceCreated() 메소드에서.누군가가 어떤 표시로 나를 도울 수 있기를 바랍니다.
대단히 감사합니다. 비트 맵은 유효한 데이터가 아닌지