USB摄像头预览识别二维码

博客: 安卓之家
掘金: jp1017
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

前言


二维码现在用的超级多,其实它就是一种编码,把字符串编码保存成一个图片,我们扫描图片得到字符串就解码成功。

最有名的二维码解析库是 google 出品的 Zxing,网上也有很多的封装库,有自定义扫描窗口等,更多库请在这个库中搜索 二维码即可:

安卓各种图片框架

这些库采用的都是手机自带的摄像头,没有USB摄像头,悲催了。

USB摄像头拍照,摄像,网上有一个很牛的开源库:

UVCCamera

我也是参考了这个库,在其基础上开发,主要是采用了test4,开启服务来拍照,摄像。这里有几个坑,耽搁了一整天啊。

这里涉及两方面内容,识别代码和扫描界面

安卓应用修改系统时间

博客: 安卓之家
掘金: jp1017
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

前言


通常,我们来获取系统时间来做一些事情,那么,如何设置系统时间呢?

问题抛出来,解决方法也就应运而生了。

解决方法


命令行

首先我想到的是手机root,然后命令行

1
date -s 要设置的时间

关于如何调用命令行,请点击:安卓程序中调用 linux 命令

如果手机没 root 怎么破呢,继续往下看吧。

EventBus3 简单使用及注意点

博客: 安卓之家
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

EventBus3 简介


EventBus Android 发布/订阅事件总线,可简化 Activities, Fragments, Threads, Services 等组件间的消息传递,可替代 Intent, Handler, BroadCast ,接口等传统方案,更快,代码更小,50K 左右的 jar 包,代码更优雅,彻底解耦。EventBus3 是最新版本,官网地址:

https://github.com/greenrobot/EventBus

安卓开发之屏蔽按键抖动,连击,长按事件

博客: 安卓之家
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

缘由


今天来个小知识点,也许遇到的人不多,但还是记录下。现在安卓机很少有实体键,老罗的情怀也只剩下一丝丝。但是除去手机,其他一些设备,比如电视,盒子等很多还有实体键,那么实体键在按下后就有一些问题,“抖动”和“连击”。

在开发中,我这里有一个很重要的操作,是实体键触发的,在实际测试中,会出现按下一次,多次触发的问题,那么就需要解决下,其实,解决方法也不难,我们开始吧。

ViewPager 嵌套百度地图事件冲突的解决方法

博客: 安卓之家
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

问题


主 Activity 由一个自定义的 ViewPager 控制,包含多个 fragment,其中一个 fragment 包含一个百度地图 View,当左右滑动百度地图的时候,地图不动,只能望着 ViewPager 左右滑动的脚步而叹息,导致事件冲突。

解决之路


这个问题从开始就有,只是感觉事件分发有些复杂,没深入研究,网上很多大神关于这个知识点有很多的分享,也收获了不少,曾经按照《开发艺术探索》里的方法解决,最终地图的事件解决,又导致其他 View 冲突,不能操作,这个真心没法忍啊。

这个问题一直在我的心里,始终没有放下,只要看到关于事件分发的文章,我都会看一下,看能否对此有帮助,然而,一无所获。

直到今天,晚上,有心人天不负,无意的,我看到一个群里的群主这么写到:

Android Studio 引用系统 jar 包的正确姿势

博客: 安卓之家
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

Android Studio 如何引用 jar 包,相信大家都会操作的,现在问题来了,对于系统里的 jar,比如 framework.jar该如何配置呢?

这里来个简单的需求吧,我们自己编译系统,并且有串口驱动,该驱动有提供 so 和 jar。这些文件配置到系统里面,当jar更新,api 不变的话,只要更新系统就可以,而应用程序可以不变而采用系统最新的 jar 包。

也就是说,编译时引用jar包,而不把该 jar 打包进 apk,而apk运行时采用系统里面的 jar 即可。

这个需求在 eclipse 里面很好配置,只要设置 jar 为系统 jar 就可以,那么 AS 该如何配置呢?

jni 开发错误之 java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol tcgetattr referenced by libserial_port.so...

博客: 安卓之家
微博: 追风917
CSDN: 蒋朋的家
简书: 追风917

每日一景

昨天把串口的驱动代码重新编译下,出现了问题:

1
java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol tcgetattr referenced by libserial_port.so...

一般 jni 开发的话,C 代码命名常出错,检查了下,是 OK 的,然后 google了下,发现基本就下面两个:

[Android 调试] android串口通信问题,基于android studio
NDK UnsatisfiedLinkError when lowering project api level 21 to 19

而 stackoverflow 的哥们 rebuild 就好了,我各种折腾也不见好呐,于是看到上一篇 eoe 的,给了我思路:

我们看下包含该函数 **tcgetattr** 的文件, 比较下 NDK api 19 和 23 的 termios.h 文件:

23 的该文件目录:D:\Android\Sdk\ndk-bundle\platforms\android-23\arch-arm\usr\include

,
Fork me on GitHub