如何将Zxing库包含到android项目中?

时间:2013-06-10 15:00:25

标签: java android barcode zxing qr-code

我已经在stackoverflow中读到了这个问题的一些答案,但它对我不起作用。我已经有了一个项目,现在我想将QR Code和条形码阅读器集成到我的项目中。

我从core-2.2.zip

下载了zip文件

我没有找到任何“core.jar”,我读到我必须整合添加在“core”文件夹中的文件。我是否必须将所有类添加到我的项目(整个文件夹)?或者我是否必须使用该文件夹创建一个jar文件?

我正在使用Android Studio。任何人都可以帮助我吗?谢谢

3 个答案:

答案 0 :(得分:5)

确实有一个Android应用程序是ZXing项目的一部分。 它使用maven central中发布的核心模块。如果您有maven项目(大多数Android应用程序不太可能),您可以将以下依赖项添加到 pom.xml 文件中:

db.collectionName.aggregate({
  "$match": {
    "destination": "PAPER"
  }
}, {
  "$group": {
    "_id": "$destination",
    "avg_exec_price": {
      "$avg": "$execution_price"
    },
    "data": {
      "$push": "$$ROOT"
    }
  }
}, {
  "$unwind": "$data"
}, {
  "$group": {
    "_id": "$_id",
    "data": {
      "$push": {
        "check": {
          "$cond": [{
              "$gt": ["$data.execution_price", "$avg_exec_price"] // check in $cond if execution_price gt avg_exec_price
            }, "$data", ""] //push data if true else blank 
        }
      }
    }
  }
}, {
  "$unwind": "$data"
}, {
  "$match": {
    "data.check": {
      "$exists": true, // check data.check not empty or blank
      "$ne": ""
    }
  }
}, {
  "$project": {
    "_id": "$_id",
    "data": "$data.check"
  }
}).pretty()

用于 Gradle 项目:

<dependency>
    <groupId>com.google.zxing</groupId>
    <artifactId>core</artifactId>
    <version>3.2.0</version>
</dependency>

或者您可以直接从here下载已编译的.jar。

请注意,这个答案是指版本3.2.0,这是最新的稳定版本。版本2.2可以类似地获得。

答案 1 :(得分:1)

对于QRCode阅读,您还可以使用7.8及更高版本的Google Play服务。您可以查看此link from Google

答案 2 :(得分:0)

你应该做的是包含一个jar,你无法下载。起初当你试图采取zxing有同样的问题,幸运的是我找到了罐子,我可以下载它。您必须验证所需的任何版本。

core

我没有在Android Studio工作,这是在eclipse中,但我想它必须是同样的方式。

eclipse

您需要添加的是完整的项目,作为主项目的库,您的项目。活动并创建包含此库的布局。

library

默认情况下也是:

public class Validador extends CaptureActivity {

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.validador);
}

}

布局:

<FrameLayout
android:layout_width="wrap_content" 
android:layout_height="wrap_content"
android:layout_gravity="center">
    <include layout="@layout/capture"/>
</FrameLayout>