我正在尝试使用JDK 1.6在Android 2.3.1中使用DigestUtils库,但是在执行该应用程序时出现以下错误:Could not find method org.apache.commons.codec.binary.Hex.encodeHexString, referenced from method org.apache.commons.codec.digest.DigestUtils.shaHex这是堆栈跟踪:02-03 10:25:45.153: I/dalvikvm(1230): Could not find method org.apache.commons.codec.binary.Hex.encodeHexString, referenced from method org.apache.commons.codec.digest.DigestUtils.shaHex02-03 10:25:45.153: W/dalvikvm(1230): VFY: unable to resolve static method 329: Lorg/apache/commons/codec/binary/Hex;.encodeHexString ([B)Ljava/lang/String;02-03 10:25:45.153: D/dalvikvm(1230): VFY: replacing opcode 0x71 at 0x000402-03 10:25:45.153: D/dalvikvm(1230): VFY: dead code 0x0007-0008 in Lorg/apache/commons/codec/digest/DigestUtils;.shaHex ([B)Ljava/lang/String;02-03 10:25:45.163: D/AndroidRuntime(1230): Shutting down VM02-03 10:25:45.163: W/dalvikvm(1230): threadid=1: thread exiting with uncaught exception (group=0x40015560)02-03 10:25:45.173: E/AndroidRuntime(1230): FATAL EXCEPTION: main02-03 10:25:45.173: E/AndroidRuntime(1230): java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Hex.encodeHexString02-03 10:25:45.173: E/AndroidRuntime(1230): at org.apache.commons.codec.digest.DigestUtils.md5Hex(DigestUtils.java:226)02-03 10:25:45.173: E/AndroidRuntime(1230): at com.caumons.trainingdininghall.ConnectionProfileActivity.onCreate(ConnectionProfileActivity.java:20)导致异常的代码行是:String hash = DigestUtils.shaHex("textToHash");我已经在Android之外的Java类中执行了相同的代码,并且可以正常工作!因此,我不知道为什么在使用Android时无法正常工作...我将libraty放在应用程序的新libs /文件夹中,并更新了BuildPath以使用它。如果我尝试使用md5而不是sha1,则会出现相同的异常。任何帮助,将不胜感激!谢谢。更新:由于这是一个非常活跃的问题,因此我已更改了已接受的答案,转而使用@ DA25,因为他的解决方案很简单,并且大量的投票证明它是可行的。
3 回答
- 3 回答
- 0 关注
- 1795 浏览
添加回答
举报
0/150
提交
取消