Android學習之簡單的二維碼掃描功能以及回調值


我所做的功能是點擊ImageView后進行二維碼掃描,並將掃描完后得到的值自動輸入到Editview中。在實現的過程中由於對zxing開源庫的不熟悉,浪費了很多時間,

在遇到問題的同時也查閱了相關資料,現將自己的開發過程中遇到的問題以及解決方法展示。

 

在開發的過程中,參考了博客https://www.cnblogs.com/xch-yang/p/9418493.html,特此感謝!

首先引入jar包

這個jar包我是從別人的源碼中下載的,當然也可以去github下載整個zxing項目,地址:https://github.com/zxing/zxing

在分支里面選擇tag,在這里可以選擇最新版本

下載zxing的核心jar包。地址:

http://repo1.maven.org/maven2/com/google/zxing/core/

把zxing中的文件copy到項目中

 

 

導入相關的資源

copy res底下的相關資源文件,如下: 

       drawable、drawable-hdpi和layout 

        

       raw文件和values文件 

        

在copy values中的文件時,不要進行覆蓋,在原有的文件上進行添加

 

導入的包的文件逐個打開,將錯誤進行修改,修改為自己的包

 

 

 

    

 

 

capture.xml的ViewfinderView改成自己包名下的

    

最后要在Manifest中添加權限,我這里設置的權限較多,可根據自己的需求修改

 

最后需要編寫邏輯代碼

首先是掃碼功能:

接下來是值的回調,需要對onActivityResult進行重寫。

 

 

 此時已經基本實現了功能,由於是開源的,所以如果有特殊的需求可以對zxing的文件進行修改。

如果在測試時遇到了Error: Program type already present: com.google.zxing.BarcodeFormat報錯,是由於包的導入重復了,

對重復的包進行刪除即可,同時別忘了在gradle中刪除依賴!

網絡的資源是無限的,感謝提供各種疑難問題解答的大佬們!!!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM