접근허가줬어요!
AndroidManifest.xml 파일에    <uses-permission android:name="android.permission.CAMERA"/> 썼구요

하루종일 관련소스들 붙잡고 보고있는데 어렵네요
CameraDemo.java 는 프레임에 카메라를 뿌려주고, 화면을 터치하면 캡쳐화면을 따오는거까지 하려고 하는데

CameraTemplate.java 는 카메라 생성과 변경,소멸에 관한 내용을 책에서 본대로 쓰긴했는데;
캡쳐는 둘째 치고 우선 구동부터 시켜보고싶어요 ㅠㅠㅠ


package test03.yoon.TestingMix;
import java.util.List;
import android.content.Context;
import android.graphics.PixelFormat;
import android.hardware.Camera;
import android.hardware.Camera.Size;
import android.util.Log;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.widget.Toast;
public class CameraTemplate extends SurfaceView implements SurfaceHolder.Callback {
 private final String TAG = "Template";
 private SurfaceHolder holder;
 private SurfaceView surfaceView;
 private Camera camera;
 public CameraTemplate(Context context) {
  super(context);
  holder = getHolder();
  holder.addCallback(this);
  holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
 }
 public void surfaceCreated(SurfaceHolder holder) {
  camera = Camera.open();
  try {
   camera.setPreviewDisplay(holder);
  } catch (Throwable t) {
   Log.e("CameraDemo-surfaceCallback","Exception in setPreviewDisplay()", t);
   //Toast.makeText(CameraTemplate.this, t.getMessage(), Toast.LENGTH_LONG).show();
  }
 }
 
 public void surfaceChanged(SurfaceHolder holder, int format, int width,
   int height) {
  Camera.Parameters parameters = camera.getParameters();
  parameters.setPreviewSize(width, height);
  parameters.setPictureFormat(PixelFormat.JPEG);
  camera.setParameters(parameters);
  camera.startPreview();
  }
 
 public void surfaceDestroyed(SurfaceHolder holder) {
  camera.stopPreview();
  camera.release();
  camera = null ;
 }
 //캡쳐....코딩...아직덜했구요ㅠㅠ 모르겠어요암튼
 public boolean Capture(Camera.PictureCallback jpegHandler) {
  if (camera != null){
   camera.takePicture(null, null, jpegHandler);
   return true;
  }else {
   return false;
  }
 }
}



이거는 CameraDemo.java 파일이요

package test03.yoon.TestingMix;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import android.app.Activity;
import android.hardware.Camera;
import android.hardware.Camera.PictureCallback;
import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.FrameLayout;
import android.widget.Toast;
public class CameraDemo extends Activity {
    protected static final String TAG = null; 
 Toast yToast =null;
 private CameraTemplate CamarePreview;
  
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        FrameLayout frame = (FrameLayout) findViewById(R.id.frame);
        CamarePreview = new CameraTemplate(this);
        frame.addView(CamarePreview); 
        frame.setOnTouchListener(frameTouchLister);
    }
    
    View.OnTouchListener frameTouchLister = new OnTouchListener() {
   public boolean onTouch(View v, MotionEvent event) {
    if(event.getAction() == MotionEvent.ACTION_DOWN){
    //카메라 캡쳐를 넣으면 되 ㅋㅋㅋㅋㅋㅋ여기서 터치발생할경우!
     return true;
    }
    return false;
  }
 };
}