日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android 集成二维码扫描器

發布時間:2024/1/1 Android 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 集成二维码扫描器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.





GitHub:https://github.com/bingoogolapple/BGAQRCode-Android


Layout:

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/activity_qrcode"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="cn.queenup.rike.activity.QRCodeActivity"><cn.bingoogolapple.qrcode.zxing.ZXingViewxmlns:app="http://schemas.android.com/apk/res-auto"android:id="@+id/qrcode_zxingview"android:layout_width="match_parent"android:layout_height="match_parent"app:qrcv_animTime="1000"app:qrcv_borderColor="@android:color/white"app:qrcv_borderSize="1dp"app:qrcv_cornerColor="#ffd535"app:qrcv_cornerLength="20dp"app:qrcv_cornerSize="3dp"app:qrcv_maskColor="#33000000"app:qrcv_rectWidth="200dp"app:qrcv_scanLineColor="@android:color/white"app:qrcv_scanLineSize="1dp"app:qrcv_qrCodeTipText="將二維碼放入框內,即可自動掃描"app:qrcv_topOffset="220dp" /><include layout="@layout/toolbar_qrcode" /></RelativeLayout>

Activity:

public class QRCodeActivity extends BaseActivity implements QRCodeView.Delegate{// 動態申請權限(要申請的權限)private String[] permissions = {Manifest.permission.CAMERA,Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE};private ImageView iv_toolbar_back;private ImageView iv_toolbar_flash;private ZXingView zv_zxingView;private boolean isFlash;@Overrideprotected int getLayoutId() {return R.layout.activity_qrcode;}@Overrideprotected void initView() {iv_toolbar_back = (ImageView) findViewById(R.id.toolbar_qrcode_back);iv_toolbar_flash = (ImageView) findViewById(R.id.toolbar_qrcode_flash);zv_zxingView = (ZXingView) findViewById(R.id.qrcode_zxingview);}@Overrideprotected void initListener() {iv_toolbar_back.setOnClickListener(this);iv_toolbar_flash.setOnClickListener(this);}@Overrideprotected void initData() {checkPermissions();zv_zxingView.setDelegate(this);}private void checkPermissions() {// 版本判斷。當手機系統大于 23 時,才有必要去判斷權限是否獲取if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {// 檢查該權限是否已經獲取int i1 = ContextCompat.checkSelfPermission(this, permissions[0]);int i2 = ContextCompat.checkSelfPermission(this, permissions[1]);int i3 = ContextCompat.checkSelfPermission(this, permissions[2]);// 權限是否已經 授權 GRANTED---授權 DINIED---拒絕if (i1 != PackageManager.PERMISSION_GRANTED ||i2 != PackageManager.PERMISSION_GRANTED ||i3 != PackageManager.PERMISSION_GRANTED) {// 請求權限ActivityCompat.requestPermissions(this, permissions, 321);}}}@Overridepublic void onClick(View v) {switch (v.getId()){case R.id.toolbar_qrcode_back:finish();break;case R.id.toolbar_qrcode_flash:// 閃光燈if (isFlash){zv_zxingView.closeFlashlight();}else{zv_zxingView.openFlashlight();}isFlash = !isFlash;break;}}@Overridepublic void onScanQRCodeSuccess(String result) {if (TextUtils.isEmpty(result)) {MyToast.showToast(QRCodeActivity.this,"未發現二維碼");} else { // 處理二維碼 result:掃描的結果Intent intent = new Intent(this,QRCodeProcessActivity.class);intent.putExtra(Constants.QRCODE,result);startActivity(intent);finish();}zv_zxingView.startSpotDelay(500);}@Overridepublic void onScanQRCodeOpenCameraError() {MyToast.showToast(App.mContext,"打開相機錯誤,請返回并重新打開");}@Overrideprotected void onStart() {super.onStart();zv_zxingView.startCamera();zv_zxingView.showScanRect();zv_zxingView.startSpotDelay(500);}@Overrideprotected void onStop() {zv_zxingView.stopCamera();super.onStop();}@Overrideprotected void onDestroy() {zv_zxingView.onDestroy();super.onDestroy();} }


總結

以上是生活随笔為你收集整理的Android 集成二维码扫描器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。