zoukankan      html  css  js  c++  java
  • Android 二维码扫描/生成

    先看看实现效果

    1.在module的build.gradle中执行compile操作

    compile 'cn.yipianfengye.android:zxing-library:2.2'
    

    2.在Application中执行初始化操作

    ZXingLibrary.initDisplayOpinion(this);
    

    3. 在代码中执行打开扫描二维码界面

    /**
      * 打开默认二维码扫描界面
    */ 
    button1.setOnClickListener(new View.OnClickListener() { 
      @Override
        public void onClick(View v) { 
          Intent intent = new Intent(MainActivity.this, CaptureActivity.class);      
           startActivityForResult(intent, REQUEST_CODE);
           // REQUEST_CODE是我们定义的int型常量。
      }
    });

     4.在Activity的onActivityResult方法中接收扫描结果

    /**
             * 处理二维码扫描结果
    */
    if (requestCode == REQUEST_CODE) { //处理扫描结果(在界面上显示)
      if (null != data) {
        Bundle bundle = data.getExtras();
        if (bundle == null) {
          return;
       } if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_SUCCESS) {
         String result = bundle.getString(CodeUtils.RESULT_STRING);
         Toast.makeText(this, "解析结果:" + result, Toast.LENGTH_LONG).show();
       } else if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_FAILED) {
        Toast.makeText(MainActivity.this, "解析二维码失败", Toast.LENGTH_LONG).show();
        }
      }
    }

     5.生成带Logo的二维码图片

     mBitmap = CodeUtils.createImage(textContent, 400, 400,BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher));
    imageView.setImageBitmap(mBitmap);

     6.生成不带logo的二维码图片

     mBitmap = CodeUtils.createImage(textContent, 400, 400, null);
     imageView.setImageBitmap(mBitmap);
    
  • 相关阅读:
    5.1重磅活动:区块链免费送书
    Java 9 被无情抛弃,Java 8 直接升级到 Java 10!!
    Linux负载均衡利器(LVS)
    豌豆荚Redis集群方案:Codis
    Spring Boot Redis Cluster实战
    高性能代理缓存服务器—Squid
    Facebook分布式框架—Thrift介绍。
    Java 高级面试知识点汇总!
    (4)设计模式-建造者模式
    (3)设计模式-单例模式
  • 原文地址:https://www.cnblogs.com/monkey0928/p/9864131.html
Copyright © 2011-2022 走看看