gpt4 book ai didi

android - 使用ZXing制作安卓扫码APP

转载 作者:IT老高 更新时间:2023-10-28 12:55:15 25 4
gpt4 key购买 nike

我一直在寻找如何将条形码扫描仪添加到我的应用程序。是否有任何示例或如何轻松做到这一点?

最佳答案

ZXing 项目提供了一个独立的条形码阅读器应用程序——通过 Android 的 Intent 机制——可以被其他希望集成条形码扫描的应用程序调用。

最简单的方法是从您的应用程序中调用 ZXing SCAN Intentlike this :

public Button.OnClickListener mScan = new Button.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
startActivityForResult(intent, 0);
}
};

public void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (requestCode == 0) {
if (resultCode == RESULT_OK) {
String contents = intent.getStringExtra("SCAN_RESULT");
String format = intent.getStringExtra("SCAN_RESULT_FORMAT");
// Handle successful scan
} else if (resultCode == RESULT_CANCELED) {
// Handle cancel
}
}
}

按下链接到 mScan 的按钮将直接启动到 ZXing 条码扫描仪屏幕(如果未安装 ZXing,则会崩溃)。识别出条形码后,您将在 Activity 中收到结果,此处为 contents 变量。

为了避免崩溃和为您简化事情,ZXing有provided a utility class您可以将其集成到您的应用程序中,以使 ZXing 的安装更顺畅,如果用户尚未安装它,则将其重定向到 Android Market。

最后,如果您想将条码扫描直接集成到您的应用程序中,而不需要安装单独的 ZXing 应用程序,那么它是一个开源项目,您可以这样做! :)


编辑:有人将本指南编辑成这个答案(听起来有点奇怪,我不能保证它的准确性,而且我不确定他们为什么在 2015 年使用 Eclipse ):

在eclipse中逐步设置zxing 3.2.1

  1. 从“https://github.com/zxing/zxing”下载zxing-master.zip
  2. 解压zxing-master.zip,使用eclipse在zxing-master中导入“android”项目
  3. 从“http://repo1.maven.org/maven2/com/google/zxing/core/3.2.1/”下载 core-3.2.1.jar
  4. 在“android”项目中创建“libs”文件夹并将cor-3.2.1.jar粘贴到libs文件夹中
  5. 单击项目:选择“属性”->“Java 编译器”将级别更改为 1.7。然后点击“Android”将“Project build target”改为android 4.4.2+,因为使用1.7需要用Android 4.4编译
  6. 如果“zxing-master/android/app/src/main/java/com/google/zxing/client/android/camera/”中不存在“CameraConfigurationUtils.java”。您可以从“zxing-master/android-core/src/main/java/com/google/zxing/client/android/camera/”复制并粘贴到您的项目中。
  7. 清理并构建项目。如果您的项目显示有关“switch - case”的错误,则应将其更改为“if - else”。
  8. 已完成。清理并构建项目。您可以点击“Proprties”>“Android”>点击“Is Libraries”以用于您的项目。

关于android - 使用ZXing制作安卓扫码APP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2050263/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com