惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

MyScale Blog
MyScale Blog
J
Java Code Geeks
Vercel News
Vercel News
A
About on SuperTechFans
G
Google Developers Blog
C
Check Point Blog
腾讯CDC
N
Netflix TechBlog - Medium
博客园 - 司徒正美
S
SegmentFault 最新的问题
D
DataBreaches.Net
博客园_首页
美团技术团队
Stack Overflow Blog
Stack Overflow Blog
博客园 - 聂微东
量子位
雷峰网
雷峰网
IT之家
IT之家
小众软件
小众软件
Blog — PlanetScale
Blog — PlanetScale
博客园 - 三生石上(FineUI控件)
H
Help Net Security
宝玉的分享
宝玉的分享
博客园 - 叶小钗

博客园 - zhaogaojian

Qt 5 界面闪烁与白屏问题的原因及解决办法 开发的一款IOTLink,物联网调试工具集 禁用嵌入式设备自动命名usb网卡成enxXXXXX 关闭vEthernet (Default Switch) windows设备2通过linux设备1上网 windows下的/data目录 VSCode创建launch.json的作用 Linux启动时候Ip有时候不显示问题 Android Release模式下无法运行一例解决方法 修改了命名空间后ActivityMainBinding使用爆红 Android MPAndroidChart设置折线点为横轴+纵轴数据 Android停止蓝牙扫描不起作用 MiniCom打开回显 一例ssh无法连接问题 一例串口输出异常问题 Ubuntu14.04 设置共享文件夹 3、使用ECharts控件 2、el-image设置error图像 1、自定义上传组件实现动态指定action Android 手机生成文件电脑上看不见
Android 一例Base64错误问题
zhaogaojian · 2023-10-19 · via 博客园 - zhaogaojian

在Android 11下正常,8.1下不正常
修改import
import org.apache.commons.codec.binary.Base64;

import android.util.Base64;

public static String encrypt(String data) {
        try {
            SecretKey secretKey = new SecretKeySpec(SECRET_KEY.getBytes(), ENCRYPTION_ALGORITHM);
            Cipher cipher = Cipher.getInstance(TRANSFORMATION);
            IvParameterSpec ivParameterSpec = new IvParameterSpec(INIT_VECTOR.getBytes());
            cipher.init(Cipher.ENCRYPT_MODE, secretKey, ivParameterSpec);
            byte[] encryptedData = cipher.doFinal(data.getBytes("UTF-8"));
            return Base64.encodeToString(encryptedData, Base64.DEFAULT);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    public static String decrypt(String encryptedData) {
        try {
            SecretKey secretKey = new SecretKeySpec(SECRET_KEY.getBytes(), ENCRYPTION_ALGORITHM);
            Cipher cipher = Cipher.getInstance(TRANSFORMATION);
            IvParameterSpec ivParameterSpec = new IvParameterSpec(INIT_VECTOR.getBytes());
            cipher.init(Cipher.DECRYPT_MODE, secretKey, ivParameterSpec);
            byte[] decryptedData = cipher.doFinal(Base64.decode(encryptedData, Base64.DEFAULT));
            return new String(decryptedData, "UTF-8");
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }