-3

我想知道android studio中是否有某种API可以通过USB在设备和android手机之间进行通信。例如,外接摄像头。

我之前使用过 SetupAPI 和 WINUSB 来完成这样的任务。因此,将不胜感激与这两者相似的东西。

创建该设备的公司不提供 SDK、驱动程序或任何额外信息。

非常感谢。

4

1 回答 1

0

这取决于你想做什么,但简短的回答是肯定的。要检测外部摄像头,您可以尝试以下操作:

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 文档!

于 2018-06-20T20:29:16.963 回答