最近做iOS支付寶名斟,總的流程是 :
(1)組裝訂單生成orderInfoEncoded
(2)訂單加簽生成signedString
(3)orderInfoEncoded + signedString = orderString ? ? 拿來調(diào)接口支付就可以了?
悲劇的是砂吞,我們的php后臺用支付寶官方demo,無論如何生成不了可以用的signedString(FuckingAlipayPHPEngineer)唾那!于是我們決定先把支付寶官方iOSdemo里面的東西搬到項目里來做拼弃,看起來很簡單髓需,用order對象做訂單缝裤,用signer對象做加簽,然而這里加簽就遇到問題了铜靶。只是單純的把demo里util文件夾和openssl文件夾拉過來叔遂,并不能用,各種報錯,具體不廢話了掏熬,扎心的都懂T佑稠。T,而以下提供的兩種解決方案可以干脆直接的解決問題旗芬!
方案一:
1舌胶、下載支付寶官方demo
2、項目中導(dǎo)入pod 'OpenSSL'
3疮丛、從支付寶官方demo中幔嫂,找到libcrypto.a、libssl.a誊薄,覆蓋掉Pods/OpenSSL/lib下的兩個原文件
4履恩、從支付寶官方demo中,把Util文件夾拉到自己工程里呢蔫,修改幾個import "xxx.h"為import <OpenSSL/xxx.h>
5切心、之后按支付寶官方demo走就可以了
方案二(簡單直接好理解,推薦):
1片吊、下載支付寶官方demo
2绽昏、從支付寶官方demo中,把openssl文件夾拉到自己工程里
3俏脊、從支付寶官方demo中全谤,找到libcrypto.a、libssl.a爷贫,拖到工程里
4认然、從支付寶官方demo中,把Util文件夾拉到自己工程里
5漫萄、在Build Settings-Header Search Paths里卷员,把openssl文件夾的上級目錄拖到這里
6、之后按支付寶官方demo走就可以了