24 Ekim 2017 Salı

Camera Sınıfı

Giriş
Şu satırı dahil ederiz.
import android.hardware.Camera;
Şu izinler gerekir.
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
Bu sınıf deprecate edildi. CameraDevice sınıfını kullanmak gerekir.

flash özelliği
Camera'nın flash desteği olduğu şöyle anlaşılır.
boolean isSupportFlash = getApplicationContext().getPackageManager().
 hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
Flash şöyle açılır
Parameters params = camera.getParameters();
params.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(params);
Flash şöyle kapatılır
Parameters params = camera.getParameters();
params.setFlashMode(Parameters.FLASH_MODE_OFF);
camera.setParameters(params);
getInfo metodu
Şöyle yaparız.
public int getOrientation(final int cameraId) {
  Camera.CameraInfo info = new Camera.CameraInfo();
  Camera.getCameraInfo(cameraId, info);
  return info.orientation;
}
getParameters metodu
Camera.Parameters nesnesi döner. Şöyle yaparız.
Parameters params = camera.getParameters();
open metodu
Ön kamera şöyle açılır.
Camera camera = Camera.open(Camera.CameraInfo.CAMERA_FACING_FRONT);
Arka kamera şöyle açılır.
Camera camera = Camera.open(Camera.CameraInfo.CAMERA_FACING_BACK);
release metodu
şöyle yaparız.
camera.release();
startPreview metodu
Şöyle yaparız.
camera.startPreview();
stopPreview metodu
Şöyle yaparız.
camera.stopPreview();
takePicture metodu
Şöyle yaparız.
Camera.PictureCallback pictureCallback = new PictureCallback() {
  @Override
  public void onPictureTaken(byte[] data, Camera camera) {
    BitmapFactory.Options options = new BitmapFactory.Options();
    Bitmap bmp = BitmapFactory.decodeByteArray(data, 0, data.length, options);
  }
};
camera.takePicture(null, null, pictureCallback);

Hiç yorum yok:

Yorum Gönder