Android-是否可以检测是否存在物理摄像头按钮

Android-是否可以检测是否存在物理摄像头按钮,android,camera,Android,Camera,我正在编写一个应用程序,其中我想为用户提供重新映射硬件摄像头按钮以执行其他功能的选项。但是,如果设备没有硬件摄像头按钮,我想隐藏此选项 有没有办法检测设备上是否有摄像头按钮?不幸的是,我认为这是不可能的。PackageManager类可以为您提供有关不同事物的信息,但是否有硬照相机按钮不是其中之一。你可以这样做: boolean hasCamera = getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAM

我正在编写一个应用程序,其中我想为用户提供重新映射硬件摄像头按钮以执行其他功能的选项。但是,如果设备没有硬件摄像头按钮,我想隐藏此选项


有没有办法检测设备上是否有摄像头按钮?

不幸的是,我认为这是不可能的。PackageManager类可以为您提供有关不同事物的信息,但是否有硬照相机按钮不是其中之一。你可以这样做:

boolean hasCamera = 
        getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA);
但不幸的是,没有什么比PackageManager.FEATURE\u CAMERA\u按钮更好的了

然而,您可以做的是在一系列检查中硬编码,检查您知道有硬件摄像头按钮的特定设备,例如

public boolean hasCameraButton() {
if(android.os.Build.MODEL.equals("droid1")) return true;
//more code here
}

其中droid1应为实际id。。我不知道它是什么

我的建议是让用户按下摄像头按钮以重新映射它。这样,只有使用照相机按钮的用户才能真正将其重新映射到某个对象。要求用户按下摄像头按钮的屏幕可能会说“请按下您的摄像头按钮。并非所有设备都有摄像头按钮。如果您的设备没有摄像头按钮,请按“上一步”取消。”