我必须加密一个字符串,但应用程序未达到加密方法,它在加载时崩溃.
我正在使用Apache Commons Codec库.
private EditText txtPass = (EditText)findVIEwByID(R.ID.txtPass);public String key = txtPass.getText().toString();public byte[] key_Array = org.apache.commons.codec.binary.Base64.decodeBase64(key);
由于某种原因,该应用程序在第三行崩溃.
我的logcat.
12-03 14:03:31.441 23420-23420/com.example.cristiano.automacao V/ActivityThread﹕ Class path: /data/app/com.example.cristiano.automacao-2.apk, JNI path: /data/data/com.example.cristiano.automacao/lib12-03 14:03:31.591 23420-23420/com.example.cristiano.automacao W/dalvikvm﹕ VFY: unable to resolve static method 8974: Lorg/apache/commons/codec/binary/Base64;.decodeBase64 (Ljava/lang/String;)[B12-03 14:03:31.601 23420-23420/com.example.cristiano.automacao W/dalvikvm﹕ VFY: unable to resolve static method 8984: Lorg/apache/commons/codec/binary/Base64;.encodeBase64String ([B)Ljava/lang/String;12-03 14:03:31.611 23420-23420/com.example.cristiano.automacao W/dalvikvm﹕ threadID=1: thread exiting with uncaught exception (group=0x41c7b438)
有什么线索吗?
更新
我将代码更改为此:
public static String key = "1234";public static byte[] key_Array = decodeBase64(key);
但是现在我又遇到了其他错误
java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64.decodeBase64
解决方法:
尝试这个:
// decode data from base 64 private static byte[] decodeBase64(String dataToDecode) { byte[] dataDecoded = Base64.decode(dataToDecode, Base64.DEFAulT); return dataDecoded; }//enconde data in base 64 private static byte[] encodeBase64(byte[] dataToEncode) { byte[] dataEncoded = Base64.encode(dataToEncode, Base64.DEFAulT); return dataEncoded; }
总结 以上是内存溢出为你收集整理的Java-Android-encodeBase64使应用程序崩溃全部内容,希望文章能够帮你解决Java-Android-encodeBase64使应用程序崩溃所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)