Android如何生成条形码和二维码功能
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章给大家分享的是有关Android如何生成条形码和二维码功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。背景:随着移动互联网的普及以及智能终端设备的广泛应用,移动支
千家信息网最后更新 2026年11月01日Android如何生成条形码和二维码功能
这篇文章给大家分享的是有关Android如何生成条形码和二维码功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
背景:
随着移动互联网的普及以及智能终端设备的广泛应用,移动支付变得越来越便捷,通过扫描二维码代替传统的刷卡行为。那么作为开发者而言生成二维码成为了一项必备技能。
准备:
使用zxing包
implementation "com.google.zxing:core:3.3.1"
核心代码:
package com.wangpengpro.h6test.utils;import android.graphics.Bitmap;import com.google.zxing.BarcodeFormat;import com.google.zxing.EncodeHintType;import com.google.zxing.MultiFormatWriter;import com.google.zxing.WriterException;import com.google.zxing.common.BitMatrix;import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;import java.util.HashMap;import java.util.Map;/** * @author Created by Mr.Wang on 2019/10/10 15:05. * usage: */public class CodeUtils { /** * 生成条形码(不支持中文) * * @param content * @return */ public static Bitmap createBarcode(String content) { try { BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.CODE_128, 3000, 700); int width = bitMatrix.getWidth(); int height = bitMatrix.getHeight(); int[] pixels = new int[width * height]; for (int y = 0; y < height; y++) { int offset = y * width; for (int x = 0; x < width; x++) { pixels[offset + x] = bitMatrix.get(x, y) ? 0xff000000 : 0xFFFFFFFF; } } Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); bitmap.setPixels(pixels, 0, width, 0, 0, width, height); return bitmap; } catch (WriterException e) { e.printStackTrace(); } return null; } /** * 生成二维码 * * @param content * @return */ public static Bitmap createQrcode(String content) { Map hints = new HashMap<>(); // 支持中文配置 hints.put(EncodeHintType.CHARACTER_SET, "UTF-8"); hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H); try { BitMatrix bitMatrix = new MultiFormatWriter().encode(content, BarcodeFormat.QR_CODE, 1000, 1000 , hints); int width = bitMatrix.getWidth(); int height = bitMatrix.getHeight(); int[] pixels = new int[width * height]; for (int y = 0; y < height; y++) { int offset = y * width; for (int x = 0; x < width; x++) { pixels[offset + x] = bitMatrix.get(x, y) ? 0xff000000 : 0xFFFFFFFF; } } Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); bitmap.setPixels(pixels, 0, width, 0, 0, width, height); return bitmap; } catch (WriterException e) { e.printStackTrace(); } return null; }} 使用:
ImageActivity.javapublic class ImageActivity extends AppCompatActivity { @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_image); ImageView ivBarcode = findViewById(R.id.iv_barcode); ImageView ivQrcode = findViewById(R.id.iv_qrcode); ivBarcode.setImageBitmap(CodeUtils.createBarcode("This is a barcode")); ivQrcode.setImageBitmap(CodeUtils.createQrcode("This is a qrcode")); }}activity_image.xml
感谢各位的阅读!关于"Android如何生成条形码和二维码功能"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
二维
二维码
生成
条形
条形码
功能
内容
更多
篇文章
中文
支持
移动
不错
便捷
实用
互联网
代码
传统
开发者
技能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
精品咖啡豆
什么是科技互联网
智网互联网科技
亿策互联网科技
艾特科技互联网
凡科互联网科技
西安互联网科技公司
互联网科技论坛
互联网金融监管科技
海南购全球互联网科技
佩信高科技互联网
宁波青枫互联网科技有限公司
剑昆互联网络科技有限公司临桂
畅思互联网科技
工业互联网山东科技大学
产业互联网科技服务公司
下一代互联网重大应用科技园
陕西彩京云互联网科技有限公司
互联网企业和网络科技有限公司
株洲百竞科技的互联网营销顾问
湖南永感互联网科技有限公司
善班互联网科技有限公司
电子科技大学互联网
济南和联互联网科技有限公司
博兴的互联网电子科技公司
玖二柒互联网科技公司待遇
宁夏众和广鑫互联网科技有限公司
宁波跨境商互联网科技有限公司
互联网科技接地气
互联网时代科技型公司的机会