2017-02-19 73 views
1

我可以找到很多关于如何使用ZXing库读取QR码的例子,但是,很久以前,Android Camera App开始阅读这些代码,我想触发一个Intent或者某个东西,并且能够检索读取的QR码无需安装或导入任何其他内容。下图显示了对摄像头的应用程序读取QR码的结果,注意,如果点击了格伦圈,让我复制OT剪贴板中的QR码的内容:如何使用原生Android Camera App读取条码/ qrcode(无ZXing)?

enter image description here

+1

我认为您所说的原生应用程序可能是您所使用设备的开发人员。 Android的默认相机应用程序不会这样做。 –

+0

Humm,我正在运行一个Moto X 2 Gen,这是我在我的国家可以得到的最纯粹的Android系统,我不知何故认为它是一个新功能。感谢您澄清! –

回答

2

我认为这将让你的应用程序限制某些设备的原因尽我所知不是所有的设备都有这种类型的本机相机应用程序。所以你最好使用Zxing来获得简单,独立于设备的应用程序。看看this

2

Android相机应用开始nativally读取这些代码

有〜2台十亿Android设备,从数以百计的设备制造商遍布数千器件模型。由于设备制造商倾向于实施他们自己的相机,因此在这些设备上将会有数十个(如果不是数百个)预先安装的相机应用程序。这些预安装摄像头的应用程序:

  • 少数几家QR码扫描

  • 没有那些提供QR码扫描所提供的任何形式为第三方应用程序的API请求QR码扫描

特别是,Android SDK中没有任何内容允许应用程序请求第三方扫描QR码。

+0

据我所知,它不会达到接近运行android的设备数量,但这不是我的目标。我只是想知道是否可以请求相机应用程序读取QR码,就像我们要求Gallery给我们一个图像Uri。 –

+1

@EdgarDaSilvaFernandes:Android SDK没有这个功能。欢迎您联系您选择的相机应用程序的开发人员,并询问他们是否拥有提供此功能的专有API。 – CommonsWare

1

有一个库叫zbar,它将读取任何形式的条形码,包括QR。它是用纯C编写的,用于性能和可移植性。它有很多操作系统和框架的包装,包括Android。它占用很少的空间和资源,应该可以轻松地集成到您的应用程序中。

我只使用它从我的基于Qt5的应用程序,但它也应该可以直接从本机Android使用。

构建它可能需要访问NDK,我不确定它是否包含预构建的Android二进制文件。它有很多的构建时间配置,您可以更改以删除您不需要的功能和绑定等。

我相信Android的代码包含一些示例。

祝你好运!