如何解决Android前置摄像头
| 我需要一个功能来检查前置摄像头是否存在,如果存在,请显示预览。 我找到了一些链接,但每个链接都谈论一个特定的设备: 如何在Android平台上打开“前置摄像头”? http://developer.android.com/reference/android/hardware/Camera.html#open(int LG Optimus 2X Speed的前置摄像头 如何在三星galaxy S上使用前置摄像头 谁能为此提供通用代码?还是可能适用于所有设备的组合代码?解决方法
对于> = 9的API,您可以使用
Camera
类:http://developer.android.com/reference/android/hardware/Camera.html查看它是否具有多个摄像头,并查询CameraInfo
getNumberOfCameras
getCameraInfo
:
http://developer.android.com/reference/android/hardware/Camera.CameraInfo.html
常数
int CAMERA_FACING_BACK相机的朝向与屏幕的朝向相反。
int CAMERA_FACING_FRONT照相机的朝向与屏幕的朝向相同。
对于> = 5的API,一个选项是读取public List<Camera.Size> getSupportedPictureSizes ()
。前置摄像头的最大分辨率通常比后置摄像头低得多。
http://developer.android.com/reference/android/hardware/Camera.Parameters.html
,这是kcoppock发布的,但我认为某些时候也会有人看到此消息。我亲自进行了测试,在Froyo上表现出色。
PackageManager pm = getPackageManager();
boolean frontCam,rearCam;
//It would be safer to use the constant PackageManager.FEATURE_CAMERA_FRONT
//but since it is not defined for Android 2.2,I substituted the literal value
frontCam = pm.hasSystemFeature(\"android.hardware.camera.front\");
rearCam = pm.hasSystemFeature(PackageManager.FEATURE_CAMERA);
,在2.3中是可能的。 http://developer.android.com/sdk/api_diff/9/changes/android.hardware.Camera.html
但在此之前,Android SDK没有用于查找和使用第二个前置摄像头的任何通用API。
,我认为您可以遍历电话上可用的摄像头,并检查对面的摄像头信息以查找其中一个(但仅在API级别为9时可用)
这个答案可以帮助您:如何在Android平台上打开“前置摄像头”?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。