Android将网络url转换为base64
由于页面是与H5交互完成的,所有需要客户端根据返回的URL,转换为一个Base64格式的字符串返回给H5端。
所以,我们需要借助Google的zxing工具包:
在app的build.gradle下添加依赖:
compile 'com.google.zxing:core:3.3.0'
1.封装一个生成二维码的工具类,构建creareQRImage方法,只需要传入一个url:
public static Bitmap createQRImage(String url,final int width, final int height ) {try {// 判断URL合法性 if (url == null || "".equals(url) || url.length() < 1) {return null; }Hashtable<EncodeHintType, String> hints = new Hashtable<EncodeHintType, String>(); hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); // 图像数据转换,使用了矩阵转换 BitMatrix bitMatrix = new QRCodeWriter().encode(url, BarcodeFormat.QR_CODE, width, height, hints); int[] pixels = new int[width * height]; // 下面这里按照二维码的算法,逐个生成二维码的图片, // 两个for循环是图片横列扫描的结果 for (int y = 0; y < height; y++) {for (int x = 0; x < width; x++) {if (bitMatrix.get(x, y)) {pixels[y * width + x] = 0xff000000; } else {pixels[y * width + x] = 0xffffffff; }}}// 生成二维码图片的格式,使用ARGB_8888 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; }
2.根据bitmap转换成base64:
public static String bitmapToBase64(Bitmap bitmap) {String result = null; ByteArrayOutputStream baos = null; try {if (bitmap != null) {baos = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos); baos.flush(); baos.close(); byte[] bitmapBytes = baos.toByteArray(); result = Base64.encodeToString(bitmapBytes, Base64.DEFAULT); }} catch (IOException e) {e.printStackTrace(); } finally {try {if (baos != null) {baos.flush(); baos.close(); }} catch (IOException e) {e.printStackTrace(); }}return result; }
3.调用工具类:
Bitmap ubm= QRUtil.createQRImage(getQRinfo,350,350); String bResult=CommentUtils.bitmapToBase64(ubm); String msg="data:image/png;base64,"+bResult;
LogUtil.i("base64---"+msg);
注意:传个H5的时候要加上前缀。
Android将网络url转换为base64相关推荐
- Android通过网络URL获取图片并显示
1.布局文件 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:to ...
- Spring Boot 图片url转换为base64字符串
通过图片链接将图片转换为base64编码字符串 之前直接向前端传图片文件,遇到跨域问题,一直没有解决,干脆将图片的base64字符串给前端了 参数:String类型,imgurl 图片链接 返回值:S ...
- 将网络url图片链接转换为File类型对象
将网络url图片链接转换为File类型对象 public static File convertFileByUrl(String url) {File file = null;URL urlfile; ...
- Android ExoPlayer实现网络URL或本地视频播放
Android ExoPlayer播放器使用 转载请标明出处:http://blog.csdn.net/zhijunhong/article/details/51056302 谢谢!~ 项目需要播放网 ...
- css不支持data image,CSS_CSS中使用image data URI来处理图片的方法,即将图片资源转换为 base64 字 - phpStudy...
CSS中使用image data URI来处理图片的方法 即将图片资源转换为 base64 字符串格式嵌到页面或样式中.这样连图片的请求链接都省了. 如: 使用方式 CSS Code复制内容到剪贴板 ...
- uni-app图片本地路径/网络路径转base64流 压缩
uniapp可通过此方法对本地路径 如: -/-/static/img/01.png 或者网络路径图片转为base64 urlTobase64(url) {var toBase64Url;uni.re ...
- Android 使用网络技术
Android 使用网络技术 Android 使用网络技术 使用WebView 使用Http协议访问网络 1 使用HttpURLConnection 2 使用OkHttp 解析xml格式 解析JSON ...
- 将图片(路径)转换为Base64 和 将base64转换为file类型
var image={/* 将图片(路径)转换为Base64 */getBase64FromImageURL(url, callback) {var canvas = document.createE ...
- android 代码获取图片信息吗,Android 通过网络获取图片的代码
Android 通过网络获取图片的代码 主activity package com.netimg; import android.app.Activity; import android.graphi ...
最新文章
- Hadoop运维记录系列(二十二)
- Android --- allowBackup 属性的含义和危险性实例讲解
- r语言 图形一览_R语言统计与绘图:ggplot2图形组合布局
- linux 程序收到sigsegv信号_linux下定位多线程内存越界问题实践总结
- 交通安全与智能控制专业学计算机吗,交通安全与智能控制专业主要做什么
- ios 控件切圆_iOS中 切圆角,任意几个角(带边框,不带边框)__OC和Swift版本 韩俊强的博客...
- linux下文件的相关信息
- sql server 分区_SQL Server:锁定设置以用于增强分区功能
- Let’s to be a bug-free programmer
- 什么软件可以让头发变黑_吃什么可以让头发变黑?
- 3.25期货每日早盘操作建议
- Exif 格式介绍和操作
- Excel2013 破解(编辑工作表受保护)密码
- MacOS制作ubuntu18.04系统U盘启动盘
- Flask 框架 网页跳转详解。
- python实现web可视化_数据可视化怎么做【python数据可视化的效果如何在web页面中展示】...
- 集中式存储和分布式存储
- ionic Android编译打包出错:Failed to install 'cordova-plugin-code-push'
- windows2012装sql 2000 sql 2005 vs2005的解决办法
- 网上流行护眼色的RGB值和颜色代码
热门文章
- java web 下载文件带宽限制_java-下载时限制带宽
- Dreamweaver8 查找和替换窗口不见了解决办法
- android margin/padding区别
- Redis Lettuce客户端异步连接池详解
- [RK3568 Android11] 教程之升级固件方法二(电脑升级Update包)
- 驱动人生8之后需要会员才能满速下载,解决方案
- 飞浆PaddlePaddle-百度架构师手把手带你零基础实践深度学习(学习笔记)
- 新一代工业园区智能制造产业运营中心建设项目方案建议书
- prometheus 企业监控常用函数,与简单的实际应用分析
- 姓名大全 导入mysql_根据项目类型导入Excel文件到不同数据库(示例代码)