在使用支付宝Demo时如果你的模拟器或者手机版本过高会崩溃通过查看Caused by 定位到错误如下:
01-06 02:52:12.350: W/System.err(1903): Caused by: java.lang.RuntimeException: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
看到这个蒙圈了鬼能知道啥意思!于是Debug定位具体代码发现出错代码段:
KeyFactory keyf = KeyFactory.getInstance(ALGORITHM);
查看源码也不知道错在哪里!那只能Google了,结论是Android高版本代替此代码段即可如下:
KeyFactory keyf = KeyFactory.getInstance(ALGORITHM, "BC");
遇到代码出错时应如何应对:
第一步:查看Log日志通过 Caused by 定位错误那里会告诉你出错的具体位置,
第二步:分析原因尝试自行解决,没有办法时自行Google
第三步:记录(好记性不如烂键盘),分享(与人方便与己方便)
更多内容访问个人站点点击直达