Unity Android 支付宝 接入
来源:互联网 发布:淘宝内衣模特拍摄 编辑:程序博客网 时间:2024/06/07 09:49
本想以后做个单机游戏,接入支付宝的小愿望破灭了,注册需要企业执照什么哒,搞毛。。。
第一步当然是到支付宝平台 注册应用了,注册后会有获得APPID 当然作为商户本身有一个PID 只是要签约 呵呵了,签约要的资料个体户只能长叹。。然后呢有工具 用于生成密钥 公钥和私钥 上传公钥 私钥按理应该服务器对其进行处理后发给客户端,不过demo 直接写私钥在客户端 处理了。
工具蛮给力的。
本来是用的RSA2 没啥问题 后来服务端 说不想换,所以用了RSA
报错 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
错误在这里
1 PKCS8EncodedKeySpec priPKCS8 = new PKCS8EncodedKeySpec(2 Base64.decode(privateKey));3 KeyFactory keyf = KeyFactory.getInstance("RSA");4 PrivateKey priKey = keyf.generatePrivate(priPKCS8);
但是这里显然没有错啊?这到底是怎么回事呢??
经过在博客和StackOverFlow上查询,发现原来是这样的:(我的测试机比较早了,Android版本是4.0.3的,但是用的其它人的手机版本基本上都在4.3.x)
在Android4.1.0之前的版本,代码行
是工作正常的。但是在4.1.0之后,这个就不能正常工作了,需要将该代码改变成:
KeyFactory keyf = KeyFactory.getInstance("RSA", "BC");
然后就研究了一下这个方法的作用,API上面说的是:“为指定提供程序中的指定算法生成 KeyFactory 对象”;
即:KeyFactory.getInstance(String algorithm, String provider);中的algorithm为“指定算法”,provider为“指定提供程序”。
或许是因为Android虚拟机Dalvik对KeyFactory的实现中,默认的provider在4.1.0之后由"BC"改为了其它的了。当然,仅是猜测。
还好最终解决了问题。
- Unity Android 支付宝 接入
- Unity Android平台接入支付宝SDK
- Unity Android平台接入支付宝
- Unity 、Eclipse Android平台、接入支付宝SDK
- Android支付接入:支付宝
- Android支付宝接入
- Android 接入支付宝
- Unity Android SDK支付平台接入流程
- Unity接入移动MM支付(Android)
- unity接入微信支付-Android篇
- android app 接入支付宝
- android支付宝接入(一)
- Android接入支付宝开发
- Android 支付宝接入流程
- Android 支付宝接入流程
- Android开发接入支付宝
- Android支付接入(一):支付宝
- Android支付接入(一):支付宝
- 求素数及素数表的获取
- parse(),stringify()
- Notification通知
- 使用nose组织自动化测试用例(1)
- uva10305--拓扑
- Unity Android 支付宝 接入
- 读书笔记之Modernizr
- java判断字符串相等
- String类——练习(1)
- spring 嵌套事务(Nested Transaction) 和新建事务测试
- jquery获得select option的值 和对select option的操作
- WIN Redis的安装教程以及配置
- recovery mode
- 深入理解JVM之四:详解垃圾收集器