iOS開發(fā)支付寶支付成功返回字符串的處理操作
{
memo="";
result="partner=\"311811\"&seller_id=\"nse@gmail.com\"&out_trade_no=\"S005372\"&subject=\"\U522b\U5885\U8ba2\U5355\"&body=\"\U5885\"&total_fee=\"0.1\"¬ify_url=\"http://baidu.com\"&service=\"mobile.secy.pay\"&payment_type=\"1\"&_input_charset=\"UTF-8\"&it_b_pay=\"30m\"&success=\"true\"&sign_type=\"RSA\"&sign=\"dMiqkRZvnpTnJp9zbwGNAL3Bu43RMocNwOAsRYFnueZX8Uwy81zXHLg=\"";
resultStatus=9000;
}
如上所示,為支付寶的返回數(shù)據(jù)結果。可能有的同學就懵了,這個result是一個字符串怎么把它分解成字典用那。
我封裝了一個方法可以用
/**
* 支付寶返回字段解析
*
* @param AllString 字段
* @param FirstSeparateString 第一個分離字段的詞
* @param SecondSeparateString 第二個分離字段的詞
*
* @return 返回字典
*/
+(NSDictionary *)VEComponentsStringToDic:(NSString*)AllString withSeparateString:(NSString *)FirstSeparateString AndSeparateString:(NSString *)SecondSeparateString;
+(NSMutableDictionary *)VEComponentsStringToDic:(NSString*)AllString withSeparateString:(NSString *)FirstSeparateString AndSeparateString:(NSString*)SecondSeparateString{
NSMutableDictionary *dic=[NSMutableDictionary dictionary];
NSArray *FirstArr=[AllString componentsSeparatedByString:FirstSeparateString];
for (int i=0; i<FirstArr.count; i++) {
NSString *Firststr=FirstArr[i];
NSArray *SecondArr=[Firststr componentsSeparatedByString:SecondSeparateString];
[dic setObject:SecondArr[1] forKey:SecondArr[0]];
}
return dic;
}
在AppDelegate用的時候代碼如下
-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
[[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {
NSInteger orderState=[resultDic[@"resultStatus"]integerValue];
if (orderState==9000) {
NSString *allString=resultDic[@"result"];
NSString * FirstSeparateString=@"\"&";
NSString * SecondSeparateString=@"=\"";
NSMutableDictionary *dic=[CommonToolsVEComponentsStringToDic:allString withSeparateString:FirstSeparateString AndSeparateString:SecondSeparateString];
NSLog(@"ali=%@",dic);
if ([dic[@"success"]isEqualToString:@"true"]) {
[[NSNotificationCenter defaultCenter] postNotificationName:@"AliPaySucceed" object:nil userInfo:dic];
}
}else{
NSString *returnStr;
switch (orderState) {
case 8000:
returnStr=@"訂單正在處理中";
break;
case 4000:
returnStr=@"訂單支付失敗";
break;
case 6001:
returnStr=@"訂單取消";
break;
case 6002:
returnStr=@"網(wǎng)絡連接出錯";
break;
default:
break;
}
[HUDTooles showTextHUD:returnStr];
[HUDTooles removeHUD:4];
}
}];
}
以上所述是小編給大家介紹的iOS開發(fā)支付寶支付成功返回字符串的處理操作,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
iOS App中數(shù)據(jù)管理框架Core Data的基本數(shù)據(jù)操作教程
Core Data框架能夠為我們提供比操作SQL關系型數(shù)據(jù)庫更簡單的數(shù)據(jù)管理方式,而且內置于Xcode中配合IDE操作十分方便,下面我們就來看一下iOS App中數(shù)據(jù)管理框架Core Data的基本數(shù)據(jù)操作教程2016-06-06
IOS NSUserDefault 記住用戶名及密碼功能的實例代碼
這篇文章主要介紹了IOS NSUserDefault 記住用戶名及密碼功能的實現(xiàn)代碼,需要的朋友可以參考下2017-09-09
iOS應用程序中通過dispatch隊列控制線程執(zhí)行的方法
Grand Central Dispatch簡稱(GCD)是蘋果公司開發(fā)的技術,以優(yōu)化的應用程序支持多核心處理器和其他的對稱多處理系統(tǒng)的系統(tǒng),iOS應用程序中通過dispatch隊列控制線程執(zhí)行則是以并發(fā)來達到多核優(yōu)化的重要途徑.2016-05-05
IOS中UIWebView加載Loading的實現(xiàn)方法
最近有朋友問我類似微信語音播放的喇叭動畫和界面圖片加載loading界面是怎樣實現(xiàn)的,是不是就是一個gif圖片呢!我的回答當然是否定了,當然不排除也有人用gif圖片?。?/div> 2015-05-05
iOS開發(fā)之tableView cell的展開收回功能實現(xiàn)代碼
本文介紹了iOS開發(fā)之tableView cell的展開收回功能實現(xiàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-01-01
iOS設置UIButton文字顯示位置和字體大小、顏色的方法
這篇文章給大家分享了iOS如何設置UIButton的文字顯示位置和字體的大小、顏色,文中給出了示例代碼,相信對大家的學習和理解很有幫助,有需要的朋友們下面來一起看看吧。2016-09-09最新評論

