前言
commons-codec是Apache开源组织提供的用于摘要运算、编码解码的包。常见的编码解码工具Base64、MD5、Hex、SHA1、DES等。
异常信息
java.lang.NoSuchMethodError: No static method encodeHexString([B)Ljava/lang/String;
in class Lorg/apache/commons/codec/binary/Hex; or its super classes (declaration of
'org.apache.commons.codec.binary.Hex'
appears in /system/framework/org.apache.http.legacy.boot.jar)
原因分析
其根本原因在于android内置了一个Codec库,但是版本过老(1.03),如果使用了外部引入的新版本的codec.jar系统依然会使用内置的codec库,最终导致找不到方法的问题出现。所以解决的最好办法其实是将加密算法放到后台服务中,因为加密会暴露私钥,一旦私钥被别人获取到了。加密便变得毫无意义&