iOS信用卡支付接入iPayLinks及開發(fā)注意點,ios開發(fā)信用卡支付,ios支付開發(fā)IOS信用卡支付訪問iPayLinks和開發(fā)點這幾天在做新版本需求,因為項目面向國際市場,涉及的付款問題比較隱蔽。除了支付寶、微信、銀聯(lián)、apple pay等國內(nèi)知名的支付方式外,新要求還接入了信用卡支付,以方便國外用戶。關(guān)于信用卡......
這幾天在做新版本需求,因為項目面向國際市場,涉及的付款問題比較隱蔽。除了支付寶、微信、銀聯(lián)、apple pay等國內(nèi)知名的支付方式外,新要求還接入了信用卡支付,以方便國外用戶。關(guān)于信用卡支付方式,我們的產(chǎn)品連接到iPayLinks。具體可以在官網(wǎng)搜索查看。
iPayLinks的申請流程不在技術(shù)討論范圍內(nèi),貴公司的產(chǎn)品可以辦理。我們只需要知道應(yīng)用結(jié)果,比如開發(fā)文檔,demo示例等。
我從產(chǎn)品中獲得了以下開發(fā)文件:
下面是iOS客戶端開發(fā)需要的。
IPayLinks商業(yè)API獲取接口規(guī)范v1.1虛擬goods.pdf
IOs設(shè)備指紋采集示例. zip
IPayLinks聯(lián)合調(diào)試環(huán)境測試卡. txt
IPayLinks信用卡,不提供主SDK調(diào)用。ios app設(shè)備指紋采集的唯一例子。zip用于生成一個必需的參數(shù)。詳見《iPayLinks商戶API收單接口規(guī)范v1.1虛擬商品》中API訂購接口的提交參數(shù)描述。pdf文檔。
因為涉及資金安全,所以提交參數(shù)中API key涉及的主要參數(shù)需要放在后端。這里的客戶端只產(chǎn)生一些與商品訂單相關(guān)的參數(shù),并提交給后端。后端統(tǒng)一調(diào)用支付接口,將支付信息回調(diào)給客戶端。
一般來說,支付過程沒有什么太大的問題。按照流程走就行了。然而,當(dāng)我正在獲取需要提交的參數(shù)時,我遇到了一個坑。問題出在設(shè)備指紋ID的獲取上,讓我坑了一段時間。
該參數(shù)需要通過ios app設(shè)備指紋采集示例演示中的SDK來處理請求生成。它提供的zip。
的主要請求生成代碼如下:
Mtrustconsumer是一個singleton,它由configure方法初始化。這里的NSDictionary內(nèi)容只是跟在演示后面。
/*!*使用提供的配置字典配置TrustDefenderMobile對象的共享實例。* @ code *[THM configure:@ { THMOrgID:@ my orgid }];* @ endcode * * @返回配置調(diào)用的結(jié)果。* * @remark此方法只運行一次,對它的任何后續(xù)調(diào)用都無效。*/(BOOL)configure:(ns dictionary *)config;
這里,profileComplete是它的代理回調(diào)方法,用來生成指紋識別id。
/*!*一旦分析完成,就調(diào)用此方法。* * @param profileResults描述分析狀態(tài)*/(void)profile complete:(ns dictionary *)profile results;
如果到了這里,按照演示就可以生成需要的參數(shù)(補(bǔ)充,這里有個坑爹的,文檔里沒有說清楚。這里所需的設(shè)備指紋id實際上與訂單id相同。這里返回的profileResults中的sessionid都不是設(shè)備指紋id,請求生成過程也只是一個驗證過程,只要能成功就行,回調(diào)信息也不是必需的參數(shù)),但問題出在這里的THM Dele。因為THMTrustDefender是單例的,然后代理就是當(dāng)前的頁面控制器對象。有一個問題。當(dāng)我支付后退出這個界面,然后繼續(xù)生成新訂單時,我會再次來到這個支付選擇界面。然后在生成設(shè)備的指紋id時,回調(diào)一直沒有進(jìn)入。問題是THMTrustDefender是單個案例,可能之前第一次持有了這個接口控制器,導(dǎo)致回調(diào)沒有響應(yīng)新進(jìn)入的接口控制器。
然后我想了想,看了看THMTrustDefender。幸運的是,它有一個塊回調(diào)。如果THMDelegate不使用block,就不會受到單實例問題的影響。
然后還有一個解決方案,只要這個指定THMDelegate不是當(dāng)前的接口控制器。你可以生成一個singleton類來單獨處理設(shè)備指紋識別,只要把它回調(diào)到當(dāng)前接口就可以了。
特別聲明:以上文章內(nèi)容僅代表作者本人觀點,不代表ESG跨境電商觀點或立場。如有關(guān)于作品內(nèi)容、版權(quán)或其它問題請于作品發(fā)表后的30日內(nèi)與ESG跨境電商聯(lián)系。
二維碼加載中...
使用微信掃一掃登錄
使用賬號密碼登錄
平臺顧問
微信掃一掃
馬上聯(lián)系在線顧問
小程序
ESG跨境小程序
手機(jī)入駐更便捷
返回頂部