我知道我们可以通过设置"camera-id"
相机参数来访问预姜饼Galaxy S设备上的前置摄像头:
Camera cam = Camera.open();
Camera.Parameters params = cam.getParameters();
params.set("camera-id", 2);
问题是,并非所有Galaxy设备都有前置摄像头。这些设备有"camera-id"
参数,它允许我将其设置为2(前面)。据我所知,确定FFC存在/不存在的唯一方法是在startPreview()
为2时查看"camera-id"
是否抛出异常。这是一种尴尬的修复,尤其是当我试图支持多种设备。
有没有人找到一种方法来查询2.1或2.2 Galaxy S上的摄像头数量,或者至少确定前置摄像头的存在?
谢谢!
答案 0 :(得分:2)
如果您需要前置摄像头,可以将其放在AndroidManifest.xml中,如下所示:
<uses-feature android:name="android.hardware.camera.front" android:required="true" />
如果您不需要它并且想要在运行时检查,您可以像这样使用PackageManager:
PackageManager.hasSystemFeature(PackageManager. FEATURE_CAMERA_FRONT);