支付寶錢包支付接口開發包2.0標準版(iOS 2.2.1) ,回調不出來,demo給出的方法是:
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation {
if ([url.host isEqualToString:@"safepay"]) {
[[AlipaySDK defaultService] processAuth_V2Result:url
standbyCallback:^(NSDictionary *resultDic) {
NSLog(@"result = %@",resultDic);
NSString *resultStr = resultDic[@"result"];
}];
}
return YES;
}
而事實上的回調是這樣的:
if ([url.host isEqualToString:@"safepay"]) {
[[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {
NSLog(@"result = %@",resultDic);
NSString *resultStr = resultDic[@"memo"];
NSLog(@"memo = %@",resultStr);
}];
}
這支付寶也真是的,雖然集成過程中很簡單,但是這個回調卻讓人想屎:
支付表是這樣說的:
/**
* 處理授權信息Url
*
* @param resultUrl 錢包返回的授權結果url
* @param completionBlock 跳授權結果回調,保證跳轉錢包授權過程中,即使調用方app被系統```kill```時,能通過這個回調取到支付結果。
*/
- (void)processAuth_V2Result:(NSURL *)resultUrl
standbyCallback:(CompletionBlock)completionBlock;
另附幾個狀態碼:
9000 訂單支付成功
8000 正在處理中
4000 訂單支付失敗
6001 用戶中途取消
6002 網絡連接出錯
這個月把公司的項目重寫了一遍,收獲很多,等有點時間時,再慢慢分享給大家啊!
~nice
- 如果有什么疑問,可以在評論區一起討論;
- 如果有什么不正確的地方,歡迎指導!
注:本文首發于 iHTCboy's blog,如若轉載,請注明來源。