iOS支付寶SDK回調那坑


支付寶錢包支付接口開發包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 網絡連接出錯

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM