iOS 最新版本支付寶支付開發(fā)流程

一沛慢、介紹

最近支付寶肾砂,微信,銀聯(lián)支付類sdk均做了更新扣溺,其中支付寶sdk變化比較大骇窍,由原來需要導(dǎo)入六個(gè)文件:

AlipaySDK.framework

AlipaySDK.bundle

Order.h和Order.m

Until文件夾

openssl文件夾

libcrypto.a和libssl.a

在新版之后只需要導(dǎo)入兩個(gè)文件就可以解決了,文件如下:

AlipaySDK.framework

AlipaySDK.bundle

下面我在舊版文章的基礎(chǔ)上锥余,為大家詳細(xì)介紹最新版本支付寶支付開發(fā)流程腹纳。

因?yàn)楣ぷ鞯男枰蚁群罂偨Y(jié)了iOS支付相關(guān)的近五類支付開發(fā)文章哈恰,分別是支付寶支付只估、支付寶網(wǎng)頁支付轉(zhuǎn)客戶端、微信支付着绷、銀聯(lián)支付蛔钙、Apple_pay,做這些總結(jié)第一是方便以后的查閱荠医,第二也為大家提供方便吁脱, 以免在用到的地方重復(fù)踩坑。

注意開始填坑1蛳颉<婀薄!

二娃胆、交互流程

建議先把開發(fā)文檔仔仔細(xì)細(xì)看一遍遍希,一定要看,剛開始的時(shí)候沒有老老實(shí)實(shí)地看完里烦,結(jié)果遇到很多的坑凿蒜,浪費(fèi)的挺多的時(shí)間的,所以建議一定要好好看看胁黑,特別是交互流程這一部分废封。

2.1 功能流程

流程說明:

第4步:調(diào)用支付接口

第5步:支付請求

第8步:接口返回支付結(jié)果

第12步:異步發(fā)送支付通知

2.2 數(shù)據(jù)交互

數(shù)據(jù)交互說明:

構(gòu)造訂單數(shù)據(jù)并簽名

發(fā)送請求數(shù)據(jù)

手機(jī)支付寶支付開發(fā)包對請求數(shù)據(jù)進(jìn)行處理

返回處理的結(jié)果數(shù)據(jù)

商戶對獲取的返回結(jié)果數(shù)據(jù)進(jìn)行處理

三、下載支付寶SDK

支付寶業(yè)務(wù)眾多丧蘸,真想找到想要的支付sdk還是要費(fèi)一番功夫的漂洋,這里給出了最新的sdk地址(注意的是下載出來的SDK包里面并沒有傳說中的開發(fā)文檔,需要其他地方找或者看網(wǎng)頁上的)。

公鑰刽漂、私鑰演训、PID、sellerID贝咙、key這些東西的用途和獲取方式在文檔上都有詳細(xì)的說明仇祭,這里不再贅述,一定要把概念分清楚再去做颈畸,不然一會就亂了乌奇。如果遇到問題的話咱們可以再一起探討。

四眯娱、導(dǎo)入庫集成SDK

4.1 導(dǎo)入文件和關(guān)鍵庫

官方demo文件

把iOS包中的壓縮文件中以下文件拷貝到項(xiàng)目文件夾下礁苗,并導(dǎo)入到項(xiàng)目工程中:

AlipaySDK.framework

AlipaySDK.bundle

在Build Phases選項(xiàng)卡的Link Binary With Libraries中,增加以下依賴:

其中徙缴,需要注意的是:

如果是Xcode 7.0之后的版本试伙,需要添加libc++.tbd、libz.tbd于样;

如果是Xcode 7.0之前的版本疏叨,需要添加libc++.dylib、libz.dylib(如下圖)穿剖。

此時(shí)蚤蔓,假如你啟動(dòng)工程,很大幾率上你會發(fā)現(xiàn)報(bào)error的情況糊余。

報(bào)錯(cuò)#includenot find

這是一個(gè)神奇的大坑秀又,我Google了好久,也不得其解贬芥,然后經(jīng)網(wǎng)友提醒之后想起來#import ""和#import <>的區(qū)別吐辙。

解決方法:Targets -> Build Settings 下的 Header Search Paths。添加如下目錄 "$(SRCROOT)/項(xiàng)目名稱/文件的絕對地址"

如圖:

4.2

在需要調(diào)用AlipaySDK的文件中蘸劈,增加頭文件引用昏苏。

1import

4.3 調(diào)用支付接口

在支付寶的接入文檔中,是將生成一個(gè)訂單這步放在客戶端來做了威沫,但這個(gè)最好是 放在服務(wù)器端來做贤惯。

后臺生成訂單然后拼接,簽名壹甥,然后服務(wù)器端直接給客戶端傳一個(gè)加密簽名過的參數(shù)就可以了救巷,這樣比較安全壶熏。

所有的訂單信息句柠,商戶信息等都掌握在自己的手中,這樣的話APP端就不怕被攔截?cái)?shù)據(jù),并且調(diào)用起來也就特別簡單了溯职,只需要調(diào)用支付的接口精盅。

如果只需要發(fā)送訂單和處理支付返回結(jié)果,只需要添加AlipaySDK.bundle和AlipaySDK.framework這兩個(gè)就行了谜酒,下載的SDK中很容易發(fā)現(xiàn)叹俏。

快捷支付方法是這個(gè):

1-(void)payOrder:(NSString?*)orderStr?fromScheme:(NSString?*)schemeStr?callback:(CompletionBlock)completionBlock;

在支付的按鈕中,使用支付寶這個(gè)類僻族,再調(diào)用這個(gè)方法就行啦粘驰!如下如:

[[AlipaySDK?defaultService]?payOrder:credential?fromScheme:fromScheme?callback:^(NSDictionary*?resultDic)?{


????NSLog(@"%@",resultDic);


}];

4.4 配置支付寶客戶端返回url處理方法

如示例AliSDKDemo\APAppDelegate.m文件中,增加引用代碼:

1import

在*@*implementation ?AppDelegate中以下代碼中的NSLog改為實(shí)際業(yè)務(wù)處理代碼:

-?(BOOL)application:(UIApplication?*)application

????????????openURL:(NSURL?*)url

??sourceApplication:(NSString?*)sourceApplication

?????????annotation:(id)annotation?{


????if?([url.host?isEqualToString:@"safepay"])?{

????????//跳轉(zhuǎn)支付寶錢包進(jìn)行支付述么,處理支付結(jié)果

????????[[AlipaySDK?defaultService]?processOrderWithPaymentResult:url?standbyCallback:^(NSDictionary?*resultDic)?{

????????????NSLog(@"result?=?%@",resultDic);

????????}];

????}

????return?YES;

}


//?NOTE:?9.0以后使用新API接口

-?(BOOL)application:(UIApplication?*)app?openURL:(NSURL?*)url?options:(NSDictionary?*)options

{

????if?([url.host?isEqualToString:@"safepay"])?{

????????//跳轉(zhuǎn)支付寶錢包進(jìn)行支付蝌数,處理支付結(jié)果

????????[[AlipaySDK?defaultService]?processOrderWithPaymentResult:url?standbyCallback:^(NSDictionary?*resultDic)?{

????????????NSLog(@"result?=?%@",resultDic);

????????}];

????}

????return?YES;

}

4.5 項(xiàng)目配置

最后,不要忘了還要寫一個(gè)URL Scheme度秘,在Targets -> Info 下最后一個(gè)即可找到顶伞,

點(diǎn)擊“Info”選項(xiàng)卡,在“URL Types”選項(xiàng)中剑梳,點(diǎn)擊“+”唆貌。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市垢乙,隨后出現(xiàn)的幾起案子锨咙,更是在濱河造成了極大的恐慌,老刑警劉巖追逮,帶你破解...
    沈念sama閱讀 207,113評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蓖租,死亡現(xiàn)場離奇詭異,居然都是意外死亡羊壹,警方通過查閱死者的電腦和手機(jī)蓖宦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評論 2 381
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來油猫,“玉大人稠茂,你說我怎么就攤上這事∏檠” “怎么了睬关?”我有些...
    開封第一講書人閱讀 153,340評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長毡证。 經(jīng)常有香客問我电爹,道長,這世上最難降的妖魔是什么料睛? 我笑而不...
    開封第一講書人閱讀 55,449評論 1 279
  • 正文 為了忘掉前任丐箩,我火速辦了婚禮摇邦,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘屎勘。我一直安慰自己施籍,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評論 5 374
  • 文/花漫 我一把揭開白布概漱。 她就那樣靜靜地躺著丑慎,像睡著了一般。 火紅的嫁衣襯著肌膚如雪瓤摧。 梳的紋絲不亂的頭發(fā)上竿裂,一...
    開封第一講書人閱讀 49,166評論 1 284
  • 那天,我揣著相機(jī)與錄音照弥,去河邊找鬼铛绰。 笑死,一個(gè)胖子當(dāng)著我的面吹牛产喉,可吹牛的內(nèi)容都是我干的捂掰。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼曾沈,長吁一口氣:“原來是場噩夢啊……” “哼这嚣!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起塞俱,我...
    開封第一講書人閱讀 37,105評論 0 261
  • 序言:老撾萬榮一對情侶失蹤姐帚,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后障涯,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體罐旗,經(jīng)...
    沈念sama閱讀 43,601評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評論 2 325
  • 正文 我和宋清朗相戀三年唯蝶,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了九秀。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,161評論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡粘我,死狀恐怖鼓蜒,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情征字,我是刑警寧澤都弹,帶...
    沈念sama閱讀 33,792評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站匙姜,受9級特大地震影響畅厢,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜氮昧,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評論 3 307
  • 文/蒙蒙 一框杜、第九天 我趴在偏房一處隱蔽的房頂上張望浦楣。 院中可真熱鬧,春花似錦霸琴、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至庐杨,卻和暖如春选调,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背灵份。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評論 1 261
  • 我被黑心中介騙來泰國打工仁堪, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人填渠。 一個(gè)月前我還...
    沈念sama閱讀 45,618評論 2 355
  • 正文 我出身青樓弦聂,卻偏偏與公主長得像,于是被迫代替她去往敵國和親氛什。 傳聞我的和親對象是個(gè)殘疾皇子莺葫,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評論 2 344

推薦閱讀更多精彩內(nèi)容