// // AlipaySDK.h // AlipaySDK // // Created by 方彬 on 14-4-28. // Copyright (c) 2014年 Alipay. All rights reserved. // //////////////////////////////////////////////////////// ////////////////version:2.1 motify:2014.12.24////////// ///////////////////Merry Christmas=。=////////////////// //////////////////////////////////////////////////////// #import "APayAuthInfo.h" typedef enum { ALIPAY_TIDFACTOR_IMEI, ALIPAY_TIDFACTOR_IMSI, ALIPAY_TIDFACTOR_TID, ALIPAY_TIDFACTOR_CLIENTKEY, ALIPAY_TIDFACTOR_VIMEI, ALIPAY_TIDFACTOR_VIMSI, ALIPAY_TIDFACTOR_CLIENTID, ALIPAY_TIDFACTOR_APDID, ALIPAY_TIDFACTOR_MAX } AlipayTidFactor; typedef void(^CompletionBlock)(NSDictionary *resultDic); @interface AlipaySDK : NSObject /** * 创建支付单例服务 * * @return 返回单例对象 */ + (AlipaySDK *)defaultService; /** * 支付接口 * * @param orderStr 订单信息 * @param schemeStr 调用支付的app注册在info.plist中的scheme * @param compltionBlock 支付结果回调Block */ - (void)payOrder:(NSString *)orderStr fromScheme:(NSString *)schemeStr callback:(CompletionBlock)completionBlock; /** * 处理钱包或者独立快捷app支付跳回商户app携带的支付结果Url * * @param resultUrl 支付结果url,传入后由SDK解析,统一在上面的pay方法的callback中回调 * @param completionBlock 跳钱包支付结果回调,保证跳转钱包支付过程中,即使调用方app被系统kill时,能通过这个回调取到支付结果。 */ - (void)processOrderWithPaymentResult:(NSURL *)resultUrl standbyCallback:(CompletionBlock)completionBlock; /** * 获取交易token。 * * @return 交易token,若无则为空。 */ - (NSString *)fetchTradeToken; /** * 是否已经使用过 * * @return YES为已经使用过,NO反之 */ - (BOOL)isLogined; /** * 当前版本号 * * @return 当前版本字符串 */ - (NSString *)currentVersion; /** * 当前版本号 * * @return tid相关信息 */ - (NSString*)queryTidFactor:(AlipayTidFactor)factor; /** * 測試所用,realse包无效 * * @param url 测试环境 */ - (void)setUrl:(NSString *)url; ////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////h5 拦截支付入口/////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////// /** * url order 获取接口 * * @param urlStr 拦截的 url string * * @return 获取到的url order info */ - (NSString*)fetchOrderInfoFromH5PayUrl:(NSString*)urlStr; /** * url支付接口 * * @param orderStr 订单信息 * @param schemeStr 调用支付的app注册在info.plist中的scheme * @param compltionBlock 支付结果回调Block */ - (void)payUrlOrder:(NSString *)orderStr fromScheme:(NSString *)schemeStr callback:(CompletionBlock)completionBlock; ////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////授权1.0////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////// /** * 快登授权 * @param authInfo 需授权信息 * @param completionBlock 授权结果回调 */ - (void)authWithInfo:(APayAuthInfo *)authInfo callback:(CompletionBlock)completionBlock; /** * 处理授权信息Url * * @param resultUrl 钱包返回的授权结果url * @param completionBlock 跳授权结果回调,保证跳转钱包授权过程中,即使调用方app被系统kill时,能通过这个回调取到支付结果。 */ - (void)processAuthResult:(NSURL *)resultUrl standbyCallback:(CompletionBlock)completionBlock; ////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////授权2.0////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////// /** * 快登授权2.0 * * @param infoStr 授权请求信息字符串 * @param schemeStr 调用授权的app注册在info.plist中的scheme * @param completionBlock 授权结果回调 */ - (void)auth_V2WithInfo:(NSString *)infoStr fromScheme:(NSString *)schemeStr callback:(CompletionBlock)completionBlock; /** * 处理授权信息Url * * @param resultUrl 钱包返回的授权结果url * @param completionBlock 跳授权结果回调,保证跳转钱包授权过程中,即使调用方app被系统kill时,能通过这个回调取到支付结果。 */ - (void)processAuth_V2Result:(NSURL *)resultUrl standbyCallback:(CompletionBlock)completionBlock; @end