flutter打包apk时报错java.security.NoSuchAlgorithmException: Algorithm HmacPBESHA256 not available的解决方法

  • 问题概述
  • 解决方法
  • build命令说明
  • 打包成功

问题概述

笔者于2021.10使用flutter编写了一款自己的app,在尝试打包成apk时报错 java.security.NoSuchAlgorithmException: Algorithm HmacPBESHA256 not available

解决方法

在打包前的准备工作与一般流程基本一致,详情可见flutter中文网或flutter打包成apk[简书]。
区别在于:
1、在创建签名时,在命令的末尾加入一行命令 -storetype JKS,如图所示
2、遇到的问题是缺少加密算法所需要的一个jar包:sunjce_provider.jar,在自己曾安装过的jre中找到该包,将其复制到fluuter目录下(android/app/libs/sunjce_provider.jar),如图所示


并记得在配置文件中更新,如图所示

build命令说明

在完成了签名和其余配置文件后,使用flutter build apk命令进行打包。笔者打包的日期为2021.10,由于flutter更新了2.版本,对于空安全有了新的设定,所以根据自己的项目使用到的依赖情况,在flutter run或是flutter build apk后可能需要加选项 --no-sound-null-safety。

打包成功

更多推荐

flutter打包apk时报错java.security.NoSuchAlgorithmException: Algorithm HmacPBESHA256 n