Намерение ACTION.IMAGE.CAPTURE с галереей на нем - PullRequest
0 голосов
/ 22 января 2019

Я хотел бы открыть Camera Intent в своем приложении, но мне нужно видеть галерею на нем, как это делает Whatsapp.Я думаю, что все дело в разрешениях, но я не знаю, как этого добиться.Вот изображение камеры whatsapp .На камере есть галерея файлов.

Вот мой код:

private void addPhoto() {
    String [] perm = {Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE};
    if (checkSelfPermission(Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED
            || checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED
            || checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
        ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.CAMERA}, 1);

    }else{
        Intent photo = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(photo, 0);
    }

}

И Манифест

<uses-feature android:name="android.hardware.camera" />

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Спасибо за вашу помощь и извините за мойанглийский.

1 Ответ

0 голосов
/ 29 января 2019

Вы не можете управлять пользовательским интерфейсом приложения камеры, которое запускается через ACTION_IMAGE_CAPTURE, каким-либо особым образом (потому что вы даже не знаете, какое приложение может быть запущено, если пользователь изменил значения по умолчанию).

Так что это невозможно;если вам нужен такой большой контроль над пользовательским интерфейсом, вам нужно создать собственный пользовательский интерфейс камеры с нуля.

...