如何在Android中将ZXing api与前置摄像头集成?

Ayu*_*rma 8 android zxing android-camera

我只想在我的Android应用程序中集成ZXing API,但无法找到合适的文档.

Tia*_*ago 9

跟着这些步骤:

1)在此处下载源代码:http://code.google.com/p/zxing/source/checkout

2)将源代码作为新项目导入Eclipse,并使项目的根目录为文件夹/ android(在源代码中找到).

3)确保还将/ core/src下的所有内容复制到此项目,因为在步骤2中导入的源代码需要它.

4)确保在Eclipse上将编译器设置为Java 1.6(右键单击您的项目,属性,Java编译器),否则您将收到有关@Override注释的一些错误.

5)编辑com.google.zxing.client.android.camera.open.GingerbreadOpenCameraInterface类,如下所示:

  while (index < numCameras) {
       Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
       Camera.getCameraInfo(index, cameraInfo);


       if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
           break;
       }
       /*//Original code (gets the back camera. This is NOT what you want!)
       if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_BACK) {
    break;
  }*/
  index++;
}
Run Code Online (Sandbox Code Playgroud)

5)将此项目作为库,如此处所述:http://developer.android.com/tools/projects/projects-eclipse.html#SettingUpLibraryProject

6)将此项目引用到您的真实项目中(右键单击您的真实项目,属性,Java构建路径,项目,添加).

7)你完成了!=)

希望能帮助到你.


Ada*_*äck 5

最新版本的Barcode Scanner以及ZXing源代码现在支持前置摄像头.


dum*_*ers 0

更新:

由于ZXing的FAQ在我发布这个答案后已经更新,以下内容不再准确:

您读过 ZXing 的常见问题解答吗?

这可以在只有前置摄像头的 Android 设备(例如 Nexus 7 平板电脑)上使用吗?目前还不行。该应用程序需要相机。在 Android 中,只有后置摄像头才被视为“真正的”摄像头,因此只有前置摄像头的设备不兼容。此外,对前置摄像头的 API 支持出现在比应用程序当前所需的更新的 Android 版本中。前置摄像头往往具有不太敏感的 CCD,并且缺乏自动对焦功能,因此无论如何都难以使用它们进行扫描。

但是,Barcode Scanner+确实支持仅带有前置摄像头的设备。

另外,虽然我觉得如果能连接前置摄像头的话这也不是完全不可能。因此,我认为你应该看看 Android 文档的相机部分:这里这里