Когда я пытаюсь открыть фронтальную камеру, она просто показывает пустой экран. Но задняя камера работает нормально. Я пробовал много разных кодов по всему форуму. Да, я использую физическое устройство с передней и задней камерами.
вот мой код
public class CamFragment extends Fragment {
android.hardware.Camera camera;
ShowCamera showCamera;
FrameLayout frameLayout;
public CamFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_cam, container, false);
if (ContextCompat.checkSelfPermission(getContext(), Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
Toast.makeText(getContext(), "Permission Denied", Toast.LENGTH_LONG).show();
ActivityCompat.requestPermissions(getActivity(), new String[] {
Manifest.permission.CAMERA
}, 1);
}
frameLayout = view.findViewById(R.id.frame);
int cameraCount = 0;
android.hardware.Camera.CameraInfo cameraInfo = new android.hardware.Camera.CameraInfo();
cameraCount = android.hardware.Camera.getNumberOfCameras();
for (int camIdx = 0; camIdx < cameraCount; camIdx++) {
android.hardware.Camera.getCameraInfo(camIdx, cameraInfo);
if (cameraInfo.facing == android.hardware.Camera.CameraInfo.CAMERA_FACING_FRONT) {
try {
camera = android.hardware.Camera.open(camIdx);
} catch (RuntimeException e) {
Log.e("Your_TAG", "Camera failed to open: " + e.getLocalizedMessage());
}
}
}
// camera= android.hardware.Camera.open();
showCamera = new ShowCamera(getContext(), camera);
frameLayout.addView(showCamera);
return view;
}
}