Я знаю, что этот вопрос задавался много раз прежде, и не было никакого решения. Но я думаю, что с новым API Camera2 это возможно, и я не нашел ни одного примера кода / решения.
Я пытаюсь сделать снимки с двух камер на Huawei P20. Всего 4 камеры (3 сзади, 1 спереди). Я использую одну обычную камеру и одну широкоугольную. Я могу делать снимки с двух камер с помощью переключателя активности, т.е. у меня есть кнопка, чтобы переключиться на другой вид деятельности, а затем открыть камеру с использованием другого идентификатора и затем сделать снимок, а затем использовать кнопку и перейти к основному виду деятельности и т. Д. ,
У меня есть два вида деятельности: один для широкого угла и один для обычной камеры. У меня есть две кнопки для каждого вида деятельности. Один для захвата изображения и один для переключения между действиями.
Вот как это выглядит на MainActivitiy.java.
textureView = findViewById(R.id.texture);
clickBtn = findViewById(R.id.captureBtn);
nextBtn = findViewById(R.id.depthBtn);
clickBtn.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
takePicture();
}
});
nextBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
refreshCamera();
Intent i = new Intent(MainActivity.this, WideCamera.class);
startActivity(i);
}
});
refreshCamera()
- для освобождения ресурса камеры. Это отлично работает. Тем не менее, я не могу показать предварительный просмотр бок о бок. Можно ли как-то показать предварительный просмотр и захватить изображения, не переключая действия? Это вообще возможно?
Спасибо.