我是靠谱客的博主 犹豫音响,最近开发中收集的这篇文章主要介绍搭建Android Camera项目工程0. 前言1. 申请相机权限2. Camera预览,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
0. 前言
这块内容非常简单,需要注意的有两个:
- 需要申请相机权限
- 需要一个Surface用来预览
1. 申请相机权限
1.1 申请Camera权限
<uses-permission android:name="android.permission.CAMERA" />
1.2 声明对应的特性
某个特性首先需要在manifest中申请对应特性
<uses-feature android:name="android.hardware.camera" />
1.3 其它权限
如果有拍照、录像、录音等申请对应的权限,此处略去
1.4 Camera特性如下
这块可以跳过,后面有用的时候再看
android.hardware.camera
应用使用设备的后置相机。只有前置相机的设备不会列出该功能,因此如果您的应用可与任何朝向的相机通信,请改用 android.hardware.camera.any 功能。
android.hardware.camera.any
应用使用设备的其中一个相机或用户为设备连接的外置相机。 如果您的应用不要求相机必须是后置式,请使用此值来替代 android.hardware.camera。
android.hardware.camera.autofocus
应用使用设备相机支持的自动对焦功能。
应用通过使用该功能暗示其还使用 android.hardware.camera 功能,除非这个父功能在声明时使用了 android:required=“false”。
android.hardware.camera.capability.manual_post_processing
应用使用设备相机支持的 MANUAL_POST_PROCESSING 功能。
您的应用可以通过该功能替换相机的自动白平衡功能。 使用 android.colorCorrection.transform、android.colorCorrection.gains 以及 TRANSFORM_MATRIX 的 android.colorCorrection.mode。
android.hardware.camera.capability.manual_sensor
应用使用设备相机支持的 MANUAL_SENSOR 功能。
android.hardware.camera.capability.raw
应用使用设备相机支持的 RAW 功能。
该功能暗示设备可以保存 DNG(原始)文件,并且设备的相机提供您的应用直接处理这些原始图像所需的 DNG 相关元数据。
android.hardware.camera.external
应用与用户为设备连接的外置相机通信。 但该功能不能保证外置相机可供您的应用使用。
android.hardware.camera.flash
应用使用设备相机支持的闪光功能。
应用通过使用该功能暗示其还使用 android.hardware.camera 功能,除非这个父功能在声明时使用了 android:required=“false”。
android.hardware.camera.front
应用使用设备的前置相机。
应用通过使用该功能暗示其还使用 android.hardware.camera 功能,除非这个父功能在声明时使用了 android:required=“false”。
android.hardware.camera.level.full
应用使用设备的至少一个相机提供的 FULL 级图像捕捉支持。 提供 FULL 支持的相机可提供快速捕捉功能、逐帧控制和手动后期处理控制。
2. Camera预览
做Android多媒体肯定要和SurfaceView,SurfaceTexture,TextureView打交道,关于这几个本文中不做展开,读者可以参考以前的文章:Android 图形系统结构 中/英 (Android Graphic Architecture),这篇文章内容略旧,Google也提供了中文文档:https://source.android.com/devices/graphics/ 。
Camera可以设置三种输出:
- MediaRecorder:这种方案基本被业界摒弃,唯一可能用到的地方就是兜底方案。所以这不是本文的重点。
- Buffer:以Buffer的形式输出,这种方案存在性能问题。
- SurfaceTexture:主流方案,通常拍照、小视频、直播都是采用这种方案,因为直接输出纹理,便于后期处理。
最后
以上就是犹豫音响为你收集整理的搭建Android Camera项目工程0. 前言1. 申请相机权限2. Camera预览的全部内容,希望文章能够帮你解决搭建Android Camera项目工程0. 前言1. 申请相机权限2. Camera预览所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复