我想知道android studio中是否有某种API可以通过USB在设备和android手机之间进行通信。例如,外接摄像头。
我之前使用过 SetupAPI 和 WINUSB 来完成这样的任务。因此,将不胜感激与这两者相似的东西。
创建该设备的公司不提供 SDK、驱动程序或任何额外信息。
非常感谢。
这取决于你想做什么,但简短的回答是肯定的。要检测外部摄像头,您可以尝试以下操作:
public String getExternalCamera(){
CameraManager cameraManager = (CameraManager) getSystemService(CAMERA_SERVICE);
String exCamId = null;
for (String cameraId : cameraManager.getCameraIdList()) {
CameraCharacteristics characteristics = cameraManager.getCameraCharacteristics(cameraId);
Integer facing = characteristics.get(CameraCharacteristics.LENS_FACING);
//LENS_FACING_EXTERNAL will return Value: 2
if (facing != null && facing.equals(CameraCharacteristics.LENS_FACING_EXTERNAL)) {
exCamId = cameraId;
}
}
return exCamId;
}
LENS_FACING_EXTERNAL
在 API 级别 23 中添加
public static final int LENS_FACING_EXTERNAL 摄像头设备是一个外部摄像头,相对于设备的屏幕没有固定的朝向。
您还可以使用:
INFO_SUPPORTED_HARDWARE_LEVEL_EXTERNAL
在 API 级别 28 中添加
公共静态最终 int INFO_SUPPORTED_HARDWARE_LEVEL_EXTERNAL
此相机设备由连接到此 Android 设备的外部相机提供支持。
该设备具有与有限级别设备相同的功能,但有一些例外。
有关更多信息,请参阅此处的 Android 文档!