- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我想以纵向布局启动 BarcodeScanner(因为我的整个应用程序都是纵向布局)。我也想知道,是否可以从 Google Play 一次安装两个应用程序(您在 list 文件中向 Barcode Scanner 添加某种依赖项——我在我的应用程序中使用它——Google Play 会自动在我的应用程序旁边安装 Barcode Scanner) .
谢谢。
最佳答案
如果您需要在纵向模式下扫描条形码,我建议您将 ZXing 库合并到您的应用程序中并进行适当的更改以使其在纵向模式下工作。
在这里获取源代码:zxing
您正在寻找库中的 Android 示例代码以及 core.jar 文件以进行条码扫描。
有关如何使其在 Portrait 中工作的说明,请按照以下说明操作:Issue 178 - zxing - Running ZXing in Portrait
我强烈建议阅读线程以获取有关更改的背景信息,但这是它的基础知识:
In order to make screen work in portrait, set portrait orientation for the activity (e.g. in manifest) and then config the camera: Use camera.setDisplayOrientation(90) in CameraConfigurationManager.setDesiredCameraParameters(Camera camera). But be aware that:
- setDisplayOrientation(int) requires Android 2.2
- setDisplayOrientation(int) does not affect the order of byte array passed in PreviewCallback.onPreviewFrame. (Refer to JavaDoc for additional info)
Because preview frames are always in "landscape", we need to rotate them. I used clockwise rotation offered by comment #c11. Do not forget to swap width and height parameters after rotation. DecodeHandler.java, rotate data before buildLuminanceSource in decode(byte[] data, int width, int height)
rotatedData = new byte[data.length];
for (int y = 0; y < height; y++) {
for (int x = 0; x < width; x++)
rotatedData[x * height + height - y - 1] = data[x + y * width];
}
int tmp = width; // Here we are swapping, that's the difference to #11
width = height;
height = tmp;I also modified CameraManager.java, getFramingRectInPreview(), as recommended by #c11:
rect.left = rect.left * cameraResolution.y / screenResolution.x;
rect.right = rect.right * cameraResolution.y / screenResolution.x;
rect.top = rect.top * cameraResolution.x / screenResolution.y;
rect.bottom = rect.bottom * cameraResolution.x / screenResolution.y;
zxing 库很容易适应您的应用程序,使其成为更流畅和集成的用户体验。强烈推荐。
关于android - ZXing 使用 IntentIntegrator 启动 BarcodeScanner 纵向布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10014617/
我如何导入 Zxing IntentIntegrator 类以在我的项目中使用它,它是一个库项目吗? Zxing IntentIntegrator 最佳答案 您需要使用 ant 将其项目编译为 JAR
我们的项目包括制作一个处理团体付款的应用程序。您可以通过扫描包含您要加入的群组 ID 的二维码来加入群组。我们制作了一个 Activity “AddOrJoinActivity”,您可以在其中创建或加
我对 ZXing 比较陌生,一直在探索他们的 API。我看过Using ZXing to create an android barcode scanning app和 getting scan re
我想在 Android 中为 IntentIntegrator 创建一个对象。 IntentIntegrator integrator = new IntentIntegrator(ZBarReade
我想以纵向布局启动 BarcodeScanner(因为我的整个应用程序都是纵向布局)。我也想知道,是否可以从 Google Play 一次安装两个应用程序(您在 list 文件中向 Barcode S
我做了一些研究(Stack Overflow 和网络),发现还有其他一些关于 Google Goggles 的问题以及将其与 Android 一起使用的可能性;通过一个 Intent 。我意识到它没有
我正在使用 ZXing Library 通过 Intent 从 Android 应用程序扫描条形码和 QR 码和 its port of the Android Application .我在我的 G
我是一名优秀的程序员,十分优秀!