ZXingAndroidClientLibrary发布及使用指南

嘎子 Android 2017-03-25 1,127 次浏览 , , 2条评论

经过几天的努力,ZXingAndroidClientLibrary终于经过测试,成功发布。Github地址:https://github.com/RileyGe/ZXingAndroidClientLibrary

ZXingAndroidClientLibrary是自己在使用学习ZXing开源库时,发现其示例软件Barcode Scanner非常适合用于自己的软件中,所以在网上出现了非常多的对Barcode Scanner软件的化简方法,但这些方法都有一个非常不好的地方就是成果是以一个APP的形式存在的,使用起来会有很多不便。具体可以参照我的文章:ZXing简明教程-从0开始,里面详细的说明了我学习的过程及制作些开源库的想法。

一、使用入门

1.1 直接引用

如果只想使用此库而不对源码进行任何更改,那么你有福了,非常容易。

1、下载AAR文件

下载地址为:ZXingAndroidClientLibrary-Releases。下载后将AAR文件解压到任意位置

2、加载AAR库

使用Android Studio,在已有的Android程序中。通过菜单“File->New->New Module”,打开如下界面:

选择“Import .JAR/.AAR Package”,并选择刚才下载的AAR文件。

3、引用AAR文件

通过“File->Project Structure...”打开如下界面:

添加Module dependency。

4、进行一点修改

这时一般情况下是会出现一个错误的,这并不是我没有修改到位,而是要进行一个选择:

a、如果想用自己的图标:在APP的Mainfest文件中增加两行:xmlns:tools="http://schemas.android.com/tools"、tools:replace="android:icon"。位置如下图所示。

如果不想自己的图标,AAR库中包含了一个图标,就更简单了,删除上图中:android:icon="@mipmap/ic_launcher"这一句就可以了。

这样就可以正常使用了。

1.2 引用代码

引用代码和上面的步骤基本一致,不过导入ZXingAndroidClientLibrary时使用的是“Import Module”。其他都是一样的,不过导入源码需要的时间一般比较长。

二、使用CaptureActivity

CaptureActivity是Barcode Scanner最核心的功能,也是此程序的入口。

使用此功能非常简单,直接当在一个普通的Activity使用就可以了,典型代码为:

三、此类库相对于Barcode Scanner的修改

如果只是想使用此库文件,不需要了解此内容。

主要修改有3点:

1、在Android Library不能使用android:showAsAction标签,所以一些layout文件中需要用app:showAsAction替代android:showAsAction。不要忘记 xmlns:app="http://schemas.android.com/apk/res-auto"。

2、如果项目是Android Library,R文件生成的字段会变成public static int,而不是public static final int,所以itemId不能用在switch语句中,在Android Library中要把switch-case换成if-else语句(共6处)。

3、在Mainfest文件中,原来CaptureActivity是初始Activity,去掉些部分内容。即去掉:

四、示例程序

源码的app文件夹下是一个完整而且非常简单示例程序,核心的代码只有两句:

但由于新版本Android安全性的考虑,需要在运行时确认摄像头权限。在确认摄像头权限时使用了PermissionsDispatcher

原创文章,文章首发于:Riley Ge (@rileyge) — Steemit

原创文章,转载请注明: 转载自TsonTec:测量解决方案提供者

本文链接地址: ZXingAndroidClientLibrary发布及使用指南

相关主题

  • ZXing简明教程-从0开始2017-03-21 ZXing简明教程-从0开始 (1)
    二维码用的越来越多了,所以自己就想研究一下。 我之前也看过有关二维吗相关的东西,知道ZXing这个东西,所以一上去就找到这个类库了。但下下来却发现自己真 […]
  • java中文件流读取的read方法注意问题2017-02-18 java中文件流读取的read方法注意问题 (0)
    本文说明了一个InputStreamReader类的public?int?read(char[]?cbuf, int?offset, […]
  • Leica仪器通过蓝牙与Android手机连接2017-03-30 Leica仪器通过蓝牙与Android手机连接 (5)
    最近在捣鼓Leica仪器通过蓝牙与Android手机连接,把此事记录一下,希望对其他人有用。 一、各种连接不成功 最早自己使用的是Google官方的例子: […]
  • 半小时入门Kotlin中的Lambda表达式2017-05-26 半小时入门Kotlin中的Lambda表达式 (1)
    在开始这个教程之前,我还是很有压力的,怎么样才能把这个问题说明白,真是挺让我头疼的。 先给大家来点基础知识吧: 一、函数式编程 有人说 也许继"面 […]
  • Kotlin中的When表达式2017-05-28 Kotlin中的When表达式 (0)
    如果之前有其他语言(如Java、C#等)的开发基础,那么在阅读和使用Kotlin时基本没有太大障碍,但有一个关键词是Kotlin中新出现的,那就是when。其 […]
  • 也赶个时髦,说说Kotlin那些事2017-05-25 也赶个时髦,说说Kotlin那些事 (1)
    自己之前很长时间都在用C#来进行桌面的编程,所以非常喜欢C#那种简洁、简单的语言风格。虽然有很多人在说C#的效率有问题(当然,Microsoft也一直在说C# […]

说点什么

2 评论 在 "ZXingAndroidClientLibrary发布及使用指南"

提醒
avatar
排序:   最新 | 最旧 | 得票最多
QQ1046559241
游客

富强、民主、文明、和谐,自由、平等、公正、法治, 爱国、敬业、诚信、友善。

增达网QQ-3057318
游客

感觉不错哦,认真拜读咯!

回顶部