1 package com.example.hellohalide; 2 3 import android.app.Activity; 4 import android.os.Bundle; 5 import android.hardware.Camera; 6 import android.util.Log; 7 import android.widget.FrameLayout; 8 import android.view.SurfaceView; 9 10 public class CameraActivity extends Activity { 11 private static final String TAG = "CameraActivity"; 12 13 private Camera camera; 14 private CameraPreview preview; 15 private SurfaceView filtered; 16 getCameraInstance()17 public static Camera getCameraInstance() { 18 Camera c = null; 19 try { 20 c = Camera.open(); 21 } catch (Exception e) { 22 Log.d(TAG, "Could not open camera"); 23 } 24 return c; 25 } 26 27 @Override onCreate(Bundle b)28 public void onCreate(Bundle b) { 29 super.onCreate(b); 30 31 setContentView(R.layout.main); 32 33 // Create a canvas for drawing stuff on 34 filtered = new SurfaceView(this); 35 36 // Create our Preview view and set it as the content of our activity. 37 preview = new CameraPreview(this, filtered); 38 39 FrameLayout layout = (FrameLayout) findViewById(R.id.camera_preview); 40 layout.addView(preview); 41 layout.addView(filtered); 42 filtered.setZOrderOnTop(true); 43 } 44 45 @Override onResume()46 public void onResume() { 47 super.onResume(); 48 camera = getCameraInstance(); 49 preview.setCamera(camera); 50 } 51 52 @Override onPause()53 public void onPause() { 54 super.onPause(); 55 if (camera != null) { 56 preview.setCamera(null); 57 camera.release(); 58 camera = null; 59 } 60 } 61 }