iOS app支付寶接口調用的一點總結(補充支付寶SDK&Demo下載地址)


由於app內需要用到支付功能,選擇了當前最流行的支付寶進行支付。在進行內嵌支付寶功能開發時,被它狠狠的耍了一把。

根據支付寶開發文檔,參考demo代碼。將相關支付功能加到了自己的代碼中。一些根據文檔來做,也沒有太大的難度。但添加完代碼,進行測試時,問題 卻來了。在app中可以成功調用支付寶app,成功支付並返回。這個時候就出現問題了。在app delegate支付寶回調本app的執行函數中,公鑰驗證簽名成功後,會對支付結果進行提示。根據demo,提示支付的代碼如下:

  1. UIAlertView * alertView = [[UIAlertView alloc] initWithTitle:@"提示" message:result.statusMessage delegate:self cancelButtonTitle:@"確定" otherButtonTitles:nil];  
  1. [alertView show];  
  1. [alertView release];  


問題就出現在這裏了。支付成功後,result.statusMessage返回的值卻是空的。而我測試取消支付,這個返回值卻是正確的,提示“操作取 消”之類的文字(具體忘記了)。支付失敗沒有進行測試。這下麻煩了,不知問題出在哪裏。總不能支付成功後,返回一個空的提示吧。或者直接將提示自己寫死, 顯示“支付成功”?那萬一是其他信息提示咋辦呢?

重複對比了demo和自己程序的代碼,發現沒有錯漏的地方。百思不得其解,於是想是不是支付寶後臺的問題?又根據支付寶服務器端的開發文檔,仔細檢查,反覆測試了。還是找不到原因。

這下沒撤了,只能打支持電話,加入一個交流羣,問了支付寶負責技術的人,反覆說明問題後,終於得到了答覆,支付成功時,result.statusMessage是沒有返回值的,大概意思是後來取消了這個返回值。

我的媽阿,對返回值作了改變,爲啥文檔又沒說明,讓我等苦逼的程序猿白白折磨了一兩天,情何以堪呢。客氣的將我的想法提了給支付寶的技術支持,回覆 說:不要太相信demo。shit,這是人話嗎,我用你的接口,不是根據你的文檔和demo,那我會擔心出錯的,而且這是涉及到金錢問題,所以更加不能馬 虎。內心暗罵了一通之後,又將我的一番建議,例如要求再進一步完善文檔,對細節再進一步謹慎之類的提交到支付寶技術支持那裏。到此,我的痛苦的支付寶接口 調用過程就告一段落了。寫這篇文章,算是提醒自己或者有需要的人,有不明白的地方,第一時間找支付寶的技術支持,不要自己瞎折騰了,說不定你碰到的問題不 是自己的問題,而是出在第三方接口上。

另外說一下,支付寶網站上找技術支持,直接點支持旺旺是沒反應的,你需要打電話去問,才能拿到技術支持的旺旺號,這裏公佈一下支付寶技術支持羣的旺旺號,應該不會被支付寶的人罵吧。呵呵

旺旺號:24768316 
密碼:alipay2010

補充:

另外,很多人發私信來問,哪裏可以下載支付寶demo或者sdk。這個問題自己曾經也痛苦過,在支付寶網站找個demo,不是一般的難,位置隱藏得非常深,特別是改版後,更加難找了。上一次(改版後)實在找不到,只好問支付寶的技術支持。

支付寶客戶端 ios&Android SDK  、 服務端 java、php下載地址:

http://www.400gb.com/file/65338626

http://download.csdn.net/detail/u012203760/7335957


這個只是無線產品的集成sdk和demo,其他的產品沒有用過,所以忽略。

發佈了26 篇原創文章 · 獲贊 5 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章