【发布时间】:2016-03-24 13:13:08
【问题描述】:
我在我的 android 应用程序中使用 zxing。当它启动时,它进入 16:9 模式。我正在调试 10' 平板电脑。我很确定它以 16:9 加载,因为打开股票相机应用程序,我可以选择 16:9 分辨率和 4:3。当我设置 16:9 时,图像与我从运行 zxing 的应用程序中获得的图像完全匹配。我需要将分辨率设置为 4:3。而且我知道它是受支持的,因为它向我显示了库存相机应用程序中的选项。我用的是前置摄像头。我在棒棒糖里。我需要帮助。我试过这个:
Camera camera = Camera.open(1);
Camera.Parameters parameters = camera.getParameters();
parameters.setPictureSize(640, 480);
但是当我后来尝试启动 zxing IntentIntegrator 时,它失败了,说它无法访问 id 为 1(正面)的相机。我已经使用新的 camera2 API 搜索了等效项,但没有成功。也许你知道该怎么做。 我正在从 android studio 中的 build.gradle 编译 zxing。所以我认为我可能无法编辑 zxing 来源。
这是我的代码:
Camera camera = Camera.open(1);
Camera.Parameters parameters = camera.getParameters();
parameters.setPictureSize(640, 480);
IntentIntegrator integrator = new IntentIntegrator(this);
integrator.setCameraId(1);
integrator.initiateScan();
这是错误:
【问题讨论】:
-
你应该使用 parameter.getsupportedsize();然后你可以设置 Picturesize 。你明白吗?
-
我已经使用了 getsupportedsizes() 并获得了支持的尺寸列表,其中有我需要的尺寸 (640x480)。这就是为什么我直接使用上面的代码然后我启动zxing。但它失败了。
-
好像zxing无法打开相机,因为我之前已经打开过设置图片大小。
-
请插入您的代码以帮助您。
-
我已经插入了我的代码
标签: android camera resolution zxing