【问题标题】:Taking raw pictures from the camera [closed]从相机拍摄原始照片[关闭]
【发布时间】:2019-12-02 11:57:38
【问题描述】:
所以,我正在尝试使用闪光灯从手机的后置摄像头拍照,但似乎 camerakit 库在调用 captureImage 时返回了一个字节数组,
我不确定它们是 jpeg 还是原始字节(我想要的),我尝试的另一件事是使用 camera2 API,但看起来很复杂(也不确定是否是正确的方法)而且我找不到好的原始格式的教程,只是 jpeg。
有人可以帮助我提供教程、示例或建议以继续吗?
【问题讨论】:
标签:
java
android
kotlin
android-camera
android-camera2
【解决方案3】:
用相机意图拍照会给出一个字节数据。
幸运的是,从字节转换为位图并不难。
启动相机意图
private fun dispatchTakePictureIntent() {
Intent(MediaStore.ACTION_IMAGE_CAPTURE).also { takePictureIntent ->
takePictureIntent.resolveActivity(packageManager)?.also {
startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE)
}
}
}
拍照后得到结果
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
if(requestCode == REQUEST_IMAGE_CAPTURE && resultCode == Activity.RESULT_OK) {
val bitmap = data?.extras?.get("data") as Bitmap
imageView.setImageBitmap(bitmap)
}
super.onActivityResult(requestCode, resultCode, data)
}
注意:
imageView = setImageBitmap(bitmap)
imageView 在布局中是我的 imageView
参考:
https://developer.android.com/training/camera/photobasics