Делайте снимки только с android намерением камеры в Kotlin, а не видео - PullRequest
1 голос
/ 29 марта 2020

Я использую следующий код Kotlin, чтобы открыть камеру в простом Android приложении и сделать снимок профиля пользователя. Я хочу только фотографировать, а не видео. Когда я запускаю игру и камера открывается, она также позволяет мне записывать видео.

val contentVvalues = ContentValues()
contentValues.put(MediaStore.Images.Media.MIME_TYPE, "image/jpg")
contentValues.put(MediaStore.Images.Media.TITLE, "My Picture")
contentValues.put(MediaStore.Images.Media.DESCRIPTION, "My first picture")
this.imageURI = contentResolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, contentValues)

val cameraIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, imageURI)

startActivityForResult(cameraIntent, ACTION_IMAGE_CAPTURE_CODE)

Мне было интересно, кто-нибудь может мне помочь с тем, как я мог go иметь только элементы управления изображением?

Я также заметил, что получил наклейки и другие элементы управления. Как мне их удалить?

Спасибо за помощь!

1 Ответ

1 голос
/ 29 марта 2020

Когда я запускаю занятие и камера открывается, она также позволяет мне записывать видео.

Существует ~ 2,5 миллиарда Android устройств, распределенных по ~ 26 000 моделей устройств. Там будут десятки, если не сотни, предустановленных приложений камеры на тех моделях устройств, которые могут реагировать на ACTION_IMAGE_CAPTURE. Есть также десятки, если не сотни, приложений камеры, которые пользователь мог установить, которые могут отвечать на ACTION_IMAGE_CAPTURE. Ваш код может запускать любое из этих сотен приложений.

И то, что делает приложение для камеры, зависит от разработчиков приложения для камеры, а не от вас.

Я также заметил, что получить наклейки и другие элементы управления. Как мне удалить их?

Вы не делаете. Это выбор разработчиков приложения для камеры.

В случае предложения как фотосъемки, так и захвата видео, это, вероятно, ошибка в этом конкретном приложении камеры. С этим очень мало что можно сделать.

Мне было интересно, кто-нибудь может мне помочь с тем, как я могу go иметь только элементы управления изображением?

Прекратить использование ACTION_IMAGE_CAPTURE. Напишите свой собственный код камеры, возможно, используя библиотеку (Google CameraX, Fotoapparat, CameraKit- Android, et c.).

...