【问题标题】:How to display front camera by default in android studio如何在android studio中默认显示前置摄像头
【发布时间】:2015-12-15 18:20:44
【问题描述】:

点击按钮时,我需要默认打开前置摄像头,但显示的是后置摄像头。请告诉我如何打开前置摄像头。

这是我的代码:

b1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
            intent.putExtra("android.intent.extras.CAMERA_FACING", 1);
            startActivityForResult(intent, 0);
        }
    }); Bitmap bmp;
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    super.onActivityResult(requestCode, resultCode, data);

    if ( data != null && data.getExtras() !=  null) {
        bmp = (Bitmap) data.getExtras().get("data");
        iv.setImageBitmap(bmp);
    }

}

【问题讨论】:

标签: android android-camera-intent


【解决方案1】:

下面的代码应该可以工作(无意)。参考this

 Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
       int cameraCount = Camera.getNumberOfCameras();
        for (int camIdx = 0; camIdx < cameraCount; camIdx++) {
            Camera.getCameraInfo(camIdx, cameraInfo);
            if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
                try {
                    cam = Camera.open(camIdx);
                } catch (RuntimeException e) {
                    Log.e(TAG, "Camera failed to open: " + e.getLocalizedMessage());
                }
            }
        }

如果你想使用intent,请检查link。我认为这个解决方案可能不适用于所有手机。查看官方doc以获得更多参考。我建议你不要关心使用的是什么相机。这取决于您调用的第三方相机应用程序。

【讨论】:

  • 谢谢你,但我需要将通过对象拍摄的图像传递给其他活动,有什么解决方案
  • 谢谢,我想这可能对我有帮助@soham
  • @SivakumarS 如果我的回答对您有帮助,请接受或发布您自己的回答。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-12-10
  • 1970-01-01
  • 1970-01-01
  • 2012-02-15
  • 2019-04-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多