Demo下载地址:
https://pan.baidu.com/s/14i84u
加入支付宝开发者平台,
https://open.alipay.com
签约移动支付服务
访问https://b.alipay.com/order/productSet.htm
有一个”移动支付”产品,点击右下解的”了解详情”
再点击”在线申请”
提交营业执照以及需要的文档
通过之后可以查看到已经签约的产品:
https://b.alipay.com/order/signManage.htm?channel=ent
点击上方的“查看PID和Key”获取商户的PID,
在开放平台应用管理页面:
https://openhome.alipay.com/platform/appManage.htm
创建一个应用,并配置应用信息:
点击应用右下角的”查看”,
点击应用环境,配置应用网关和RSA密钥,
应用网关是用户支付一笔订单,支付宝会向此网关Post这笔订单的详情与状态(下订单,取消订单,支付成功)。
使用OpenSSL配置好RSA公钥和私钥,生成KCS8的私钥
https://doc.open.alipay.com/doc2/detail?treeId=58&articleId=103242&docType=1
RSA密钥生成命令
生成RSA私钥
openssl>genrsa -out rsa_private_key.pem 1024
生成RSA公钥
openssl>rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
将RSA私钥转换成PKCS8格式
openssl>pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt
注意:“>”符号后面的才是需要输入的命令。
PKCS8格式的字符串是我们代码里面要用的,用来加密
而生成的这个rsa_public_key.pem里面是我们要上传到支付宝的开发者公钥
在下面设置:
IOS平台使用方法:
布署如下文件
Delphi 10 Seattle 下,把OrangeUI_IOS9Fix.exe, IOSPlistConfig.txt拷贝到工程目录,并设置Build Events:
$(PROJECTDIR)\OrangeUI_IOS9Fix.exe “$(OUTPUTPATH).info.plist”
这个IOSSchema必须和IOSPlistConfig.txt中的CFBundleURLSchemes对应起来,
不然支付完不能返回到您自己的应用中。
注意:这里的URL Schemes中输入的alisdkdemo,为测试demo,实际商户的app中要填写独立的scheme,建议跟商户的app有一定的标示度,要做到和其他的商户app不重复,否则可能会导致支付宝返回的结果无法正确跳回商户app。
Delphi 10.1 Berlin下面,可以直接编辑源码目录下面的info.plist.TemplateiOS.xml,
在最后的</dict></plist>之前,插入IOSPlistConfig.txt中的xml片段,
Android平台下使用方法:
添加JAR
设置权限:
配置AndroidManifest.template.xml
也就是加上下面这一段XML:
<activity
android:name=”com.alipay.sdk.app.H5PayActivity” android:configChanges=”orientation|keyboardHidden|navigation” android:exported=”false”
android:screenOrientation=”behind” >
</activity>
<activity
android:name=”com.alipay.sdk.auth.AuthActivity” android:configChanges=”orientation|keyboardHidden|navigation” android:exported=”false”
android:screenOrientation=”behind” >
</activity>