Android 使用Zbar實現(xiàn)掃一掃功能
1.準備工作:
1.實現(xiàn)掃一掃功能需要用到解碼庫,才能識別出二維碼信息,
下面提供兩個開源庫地址:
ZBar:https://github.com/ZBar/ZBar
Zxing:https://github.com/zxing/zxing
2.熟悉Android自定義Camera相關知識
2.具體使用
然而,當我們打開上述的兩個庫后,可能發(fā)現(xiàn)并沒什么卵用.
因為官方的兩個庫,里面包含的東西實在太多的,而我們僅僅需要Android中的小部分.
怎么辦捏,不用擔心,上面的鏈接其實只是我用來裝逼的,這樣才顯得我的逼格高.
在我們之前已經(jīng)有很多人為前輩做過掃一掃功能,所以分享了很多相應的jar包,SO文件,我們只要拿過來用就行了.
本文用的是
Zbar實現(xiàn)掃一掃,因為根據(jù)本人對兩個庫的使用比較,發(fā)現(xiàn)Zbar解碼比Zxing速度要快,實現(xiàn)方式也簡單.
效果圖

上面是打開百度地址的二維碼,各位大佬可以下載源碼運行看下效果.
源碼:
我是源碼
點擊下載偉大的Demo
集成:
打開源碼項目,找到里面的箭頭掃一掃Module

進入大佬自己的Android studio項目,直接點擊File->New->Import Module 選擇Demo文件導入即可.
記得在App 的gradle添加依賴. compile project(':zbarcode')

使用代碼
進入掃一掃
Intent intent1 = new Intent(MainActivity.this, CaptureActivity.class);
startActivityForResult(intent1, QR_CODE);獲取返回的結果
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == QR_CODE) {
Bundle b=data.getExtras();
String result = b.getString(CaptureActivity.EXTRA_STRING);
Toast.makeText(this, result + "", Toast.LENGTH_SHORT).show();
}注: 請根據(jù)大佬自己項目的需求,配置右邊SO庫架構,對應刪掉左邊多余的文件夾

源碼分析
ZbarCode結構

CaptureActivity:為掃一掃界面的Activity;
AutoFocusManager:相機自動聚焦管理類
CameraConfigurationManager:相機參數(shù)信息的操作類
CameraManager:為自定義相機操作的封裝,管理相機的打開,取景,參數(shù),回收處理.
PreviewCallback:圖像數(shù)據(jù)回調(diào)處理;
PreviewCallback:主線程Handler;
DecodeThread:解碼子線程;
DecodeHandler:子線程Handler;
BeepManager:掃碼操作滴的聲音處理;
流程:
掃一掃大致流程如下序列圖:

到此這篇關于Android 使用Zbar實現(xiàn)掃一掃功能的文章就介紹到這了,更多相關android 掃一掃內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
使用RecyclerView實現(xiàn)點贊頭像疊加效果
這篇文章主要為大家詳細介紹了使用RecyclerView實現(xiàn)點贊頭像疊加效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-08-08
Android Studio如何獲取SQLite數(shù)據(jù)并顯示到ListView上
這篇文章主要介紹了Android Studio獲取SQLite數(shù)據(jù)并顯示到ListView上,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03
Android 日志系統(tǒng)Logger源代碼詳細介紹
本文主要介紹Android 日志系統(tǒng)Logger,這里整理了關于Android源碼的日志系統(tǒng)資料,有研究Android源碼的朋友可以參考下2016-08-08
Android開發(fā)之a(chǎn)ctiviti節(jié)點跳轉
這篇文章主要介紹了Android開發(fā)之a(chǎn)ctiviti節(jié)點跳轉的相關資料,需要的朋友可以參考下2016-04-04
android MediaRecorder實現(xiàn)錄屏時帶錄音功能
這篇文章主要介紹了android MediaRecorder錄屏時帶錄音功能實現(xiàn)代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04

