Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 默认情况下打开前摄像头_Java_Android_Android Intent_Android Camera_Image Capture - Fatal编程技术网

Java 默认情况下打开前摄像头

Java 默认情况下打开前摄像头,java,android,android-intent,android-camera,image-capture,Java,Android,Android Intent,Android Camera,Image Capture,我正在创建一个应用程序,其中我正在设置个人资料图像和封面图像,因此在设置个人资料图像时,我希望使用intent 我正在使用 pictureIntent.putExtra("android.intent.extras.CAMERA_FACING",1); 它在索尼上工作,但当我在三星Galaxy J4上测试时,它打开了后置摄像头。我在某处搜索并发现,对于三星来说,应该使用值2。 但是它不起作用。 我只想使用意图来执行此操作。 有人对此有想法吗?你可以像下面这样做 private Camera o

我正在创建一个应用程序,其中我正在设置个人资料图像和封面图像,因此在设置个人资料图像时,我希望使用
intent

我正在使用

pictureIntent.putExtra("android.intent.extras.CAMERA_FACING",1);
它在索尼上工作,但当我在三星Galaxy J4上测试时,它打开了后置摄像头。我在某处搜索并发现,对于三星来说,应该使用值2。 但是它不起作用。
我只想使用意图来执行此操作。
有人对此有想法吗?

你可以像下面这样做

private Camera openFrontFacingCamera()  {
   int cameraCount = 0;
  Camera cam = null;
  Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
  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());
        }
    }
}

return cam;
}

添加此项后,在logcat中获得以下错误。Camera\u APM::[APM]APM的线程已启动Camera\u APM::[APM]此应用已放弃应用Camera:错误2
public static Camera getCameraInstance() {
  Camera c = null;
  try {
    c = openFrontFacingCamera();
  }
  catch (Exception e){
 }
return c; 

}