遵循本教程,我将尝试构建一个二维码阅读器
http://code.tutsplus.com/tutorials/android-sdk-create-a-barcode-reader--mobile-17162
我设法让一切正常工作,除了我需要摄像头作为我的设备的前置摄像头,而不是后置摄像头。我在教程中找不到任何允许我更改这一点的地方。我试着跟随this answer,但我仍然不能让它工作。
主要,我的问题是导入库。我得到以下错误。
operator is not allowed for source level below 1.7当我将编译器设置为1.7时,我会得到如下结果
Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead我对Android不是很精通,如果这不是一个好问题,我道歉。
那么,有没有办法让我的应用程序中的前置摄像头使用ZXing呢?有什么联系吗?
非常感谢。
发布于 2014-06-03 02:00:13
源代码使用Java7。Android不需要Java 6。您可以看到,项目中提供的构建很高兴地将Java7字节码提供给<=,并生成了一个工作的应用程序。我不确定您使用的是什么工具,这说明情况并非如此。也许它是旧的。
不过,您不应该需要复制和编译项目的代码。为什么这是必要的?使用core.jar文件。
你不需要任何这些来使用前置摄像头。只需按意图调用(https://github.com/zxing/zxing/wiki/Scanning-Via-Intent)并将额外的SCAN_CAMERA_ID设置为您想要的摄像头的ID --通常前面的摄像头为1。
示例:
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
intent.putExtra("SCAN_CAMERA_ID", 1);发布于 2015-06-23 19:09:06
经过相当多的搜索,我找到了如何使用前置摄像头。在com.google.zxing.client.android.camera.CameraConfigurationManager.java中有一段代码
public void openDriver(SurfaceHolder holder) throws IOException {
Camera theCamera = camera;
if (theCamera == null) {
theCamera = Camera.open();
if (theCamera == null) {
throw new IOException();
}
camera = theCamera;
}
theCamera.setPreviewDisplay(holder);将Camera.open(1)的Camera.open()更改为jus对我来说很好
发布于 2016-11-09 22:58:00
如果使用IntentIntegrator,则可以使用setCameraId()指定前置摄影机:
IntentIntegrator integrator = new IntentIntegrator(yourActivity);
integrator.setCameraId(1);
integrator.initiateScan();https://stackoverflow.com/questions/23999195
复制相似问题