二維碼掃描框架zxing的使用
阿新 • • 發佈:2018-11-06
目前二維碼掃描功能在app上已經非常成熟了,google的zxing專案也是目前可以說是最流行的二維碼掃描框架。但是它本身功能太多,這裡我提取出一些基本的掃碼功能,重新封裝成庫。
github:https://github.com/Sun-Shuai/zxing-demo
使用方法:
compile 'com.sunshuai:android-zxing:1.0.0'
新建一個ZxingActivity繼承CaptureActivity,自定義掃碼介面。handleDecode方法是掃描後的回撥方法,重寫它來自定義掃描後的操作,比如像下面我這麼寫的,是掃描後返回二維碼文字內容
public class ZxingActivity extends CaptureActivity { @Override public void handleDecode(Result rawResult, Bitmap barcode, float scaleFactor) { Intent intent = new Intent(); intent.putExtra(IntentConstant.EXTRANAME_QR_CODE_TEXT, rawResult.getText()); this.setResult(IntentConstant.REQUESTCODE_SCAN_QR_CODE, intent); finish(); } }
在需要掃碼的地方新增如下程式碼:
Intent intent = new Intent(this, ZxingActivity.class); startActivityForResult(intent,IntentConstant.REQUESTCODE_SCAN_QR_CODE); ----------------------------------------------------------- @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); switch (requestCode) { case IntentConstant.REQUESTCODE_SCAN_QR_CODE: ToastUtils.showShort(this, data.getStringExtra(IntentConstant.EXTRANAME_QR_CODE_TEXT)); break; } }
如果需要其他的功能,請參考https://github.com/zxing/zxing