Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 确定Kindle是否存在摄像头_Android_Camera_Android 2.2 Froyo_Kindle Fire_Kindle - Fatal编程技术网

Android 确定Kindle是否存在摄像头

Android 确定Kindle是否存在摄像头,android,camera,android-2.2-froyo,kindle-fire,kindle,Android,Camera,Android 2.2 Froyo,Kindle Fire,Kindle,我正在尝试确定一个特定的Android设备是否有摄像头。android.hardware.Camera.open()的文档说明 创建新的摄影机对象以访问设备上的第一个后向摄影机。如果设备没有背面摄像头,则返回null 我正在测试的Kindle(我相信是第一代)没有摄像头,但是open()返回非null。为什么呢?也许是因为亚马逊运行的是具有不同行为的Android分叉版本?是否有其他方法确定设备是否有摄像头?也许这可以帮助您 /** * Determines if the current de

我正在尝试确定一个特定的Android设备是否有摄像头。
android.hardware.Camera.open()的文档说明

创建新的摄影机对象以访问设备上的第一个后向摄影机。如果设备没有背面摄像头,则返回null


我正在测试的Kindle(我相信是第一代)没有摄像头,但是
open()
返回非
null
。为什么呢?也许是因为亚马逊运行的是具有不同行为的Android分叉版本?是否有其他方法确定设备是否有摄像头?

也许这可以帮助您

/**
 * Determines if the current device can handle an image capture action.
 * @return true if the device can handle an image capture action. False if it cannot.
 */
protected boolean canHandleCameraIntent() {
  final Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
  final List<ResolveInfo> results = getPackageManager().queryIntentActivities(intent, 0);
  return (results.size() > 0);            
}

这是什么KindleFire?很确定这是第一代,没有摄像头。例如,当我运行FB应用程序时,它只允许上传照片,而不允许拍照。OP使用
android.hardware.Camera
直接使用相机,而不是通过第三方应用程序。但通过此功能,如果kindle上有相机,他可以继续直接使用相机,否?@PeterJacobs您也可以尝试使用PackageManager吗?:)我认为这是解决问题的最好办法(如果Kindle也能这样做的话)是的,我正在使用PackageManager的代码解决方案,谢谢!。事实上,我发现第二种解决方案存在问题。它只在SDK 17(4.2)中受支持,我需要支持4.2之前的Android版本。如果SDK<17,则PackageManager.hasSystemFeature(PackageManager.FEATURE_CAMERA_ANY)仅返回false,而不管是否有摄像头!非常误导。
PackageManager.hasSystemFeature(PackageManager.FEATURE_CAMERA_ANY);