iOS应用内支付开始支持微信支付的第三方第三方了吗

博主最新文章
博主热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)iOS应用添加第三方支付 - 简书
iOS应用添加第三方支付
最简单明了的教程还是官方文档,以下是我给应用添加支付功能,记录下。1、微信支付(官方文档:https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=8_5)假设你的应用在微信开放平台已经创建、通过审核并获取了支付功能。拿到的相应参数、项目中成功导入微信支付SDKAPP_ID-----公众账号IDpartnerId---商户号API_KEY----商户秘钥1-1、在AppDelegate设置相应的函数
- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {
//向微信注册
[WXApi registerApp:APP_ID
withDescription:@"demo 2.0"];
returnYES;
//授权后回调WXApiDelegate
-(void)onResp:(BaseReq*)resp{
if([respisKindOfClass:[PayRespclass]]){//写个通知、告诉之前微信支付所在的页面响应相应的动作
NSString*paySuccessWeixinMsg=
paySuccessWeixinMsg=[[NSStringalloc]initWithFormat:@"%d",aresp.errCode];
[[NSNotificationCenterdefaultCenter]postNotificationName:@"PayStateWeixin"object:paySuccessWeixinMsg];
- (BOOL)application:(UIApplication*)application handleOpenURL:(NSURL*)url {
return[WXApihandleOpenURL:urldelegate:[WXApiManagersharedManager]];
-(void)onResp:(BaseReq*)resp{//返回app的回调
- (BOOL)application:(UIApplication*)application openURL:(NSURL*)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotation {
return[WXApihandleOpenURL:urldelegate:[WXApiManagersharedManager]];
微信支付跟支付宝支付还不太一样,在调起手机微信客户端支付的时得先获取prepay_id,这一步也就是官方文档说的统一下单API。统一下单API在我们的服务器端完成,通过接口返回prepay_id。接下来就是调用手机端微信支付了以下是VC中调用支付的关键代码:发起成功后就会调AppDelegate中的-(void)onResp:(BaseReq*)
-(void)weiXinPayAction:(NSString*)out_trade_noStr prepay_id:(NSString*)prepay_idStr{
payRequsestHandler*handler=[[payRequsestHandleralloc]init];
intrandomX =arc4random() %10000;
NSDate* date = [NSDatedateWithTimeIntervalSinceNow:0];
inttime_stamp=(int)[datetimeIntervalSince1970];
PayReq*request=[[PayReqalloc]init];
request.openID=APP_ID;//公众账号ID
request.partnerId=partnerId;//商户号
request.prepayId=prepay_idS//(接口返回--预支付交易会话ID)
request.package=@"Sign=WXPay";//(固定写法)
request.nonceStr=[WXUtilmd5:[[NSStringalloc]initWithFormat:@"%d",randomX]];//随机字符串
request.timeStamp= time_//时间戳
NSDictionary*parameters =@{@"appid":APP_ID,@"partnerid":partnerId,@"prepayid":prepay_idStr,@"package":@"Sign=WXPay",@"noncestr":request.nonceStr,@"timestamp":[[NSStringalloc]initWithFormat:@"%d",time_stamp]};
NSMutableDictionary*mutableDic=[[NSMutableDictionaryalloc]initWithDictionary:parameters];
[handlersetKey:API_KEY];
request.sign=[handlercreateMd5Sign:mutableDic];
[WXApisendReq:request];
以上是实现微信支付需要在app端添加的代码。如果在微信支付的时候,跳转到微信支付界面弹出了一个确定按钮,页面空白,这个很有可能是你的APP_SECRET(商户密钥)没有设置对,这东西的作用是在对支付参数进行md5加密时所用到的key。
2、支付宝支付(官方文档:http://open.alipay.com/platform/document.htm#down)
应用已在支付宝开放平台审核通过,获取相应的参数。项目中成功导入支付宝SDK结合官方Demo。再说一点下:有些童鞋在导入支付宝SDK时rsa.h中会报这个错误:#include &ssl/asn1.h&,这是由于在编译时Xcode找不到&ssl/asn1.h&文件,在TARGETS-&Build Settings-&Header Search Paths添加:$(SRCROOT)/PayDemoTest/ThirdPart/Pay/Alipay,在项目中的目录结构。
PARTNER---合作身份者ID--商家账户中找到!以2088开头SELLER-----支付宝收款账号PRIVATEKEY-商户方的私钥,pkcs8格式在AppDelegate中添加该方法
- (BOOL)application:(UIApplication*)application openURL:(NSURL*)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotation {
//跳转支付宝钱包进行支付,处理支付结果
[[AlipaySDKdefaultService]processOrderWithPaymentResult:urlstandbyCallback:^(NSDictionary*resultDic) {
NSLog(@"result = %@",resultDic);
returnYES;
在支付的VC页面,调用我们自己的服务器后台接口获取tradeNO(订单ID由商家自行制定),然后初始化订单对象,并赋予相应的值
-(void)zhiFuBaoAction:(NSString*)out_trade_no{
//生成订单信息及签名,将商品信息赋予AlixPayOrder的成员变量
Order*order = [[Orderalloc]init];
order.partner=PARTNER;//合作身份者ID
order.seller=SELLER;//支付宝收款账号
order.tradeNO= out_trade_//订单ID(由商家自行制定)
order.productName=@"商品标题";//商品标题
order.productDescription=@"商品描述";//商品描述
order.amount= [NSStringstringWithFormat:@"%.2f",[moneyTF.textfloatValue]];//商品价格
order.notifyURL=[[NSStringalloc]initWithFormat:@"%@/pay/alipay/receive_notify",SERVERURL];//回调URL
order.service=@"mobile.securitypay.pay";
order.paymentType=@"1";
order.inputCharset=@"utf-8";
order.itBPay=@"30m";
order.showUrl=@"m.alipay.com";
//应用注册scheme,在AlixPayDemo-Info.plist定义URL types
NSString*appScheme =@"Yunshu";
//将商品信息拼接成字符串
NSString*orderSpec = [orderdescription];
NSLog(@"orderSpec = %@",orderSpec);
//获取私钥并将商户信息签名,外部商户可以根据情况存放私钥和签名,只需要遵循RSA签名规范,并将签名字符串base64编码和UrlEncode
id signer =CreateRSADataSigner(PRIVATEKEY);
NSString*signedString = [signersignString:orderSpec];
//将签名成功字符串格式化为订单字符串,请严格按照该格式
NSString*orderString =
if(signedString !=nil) {
orderString = [NSStringstringWithFormat:@"%@&sign=\"%@\"&sign_type=\"%@\"",
orderSpec, signedString,@"RSA"];
[[AlipaySDKdefaultService]payOrder:orderStringfromScheme:appSchemecallback:^(NSDictionary*resultDic) {
NSLog(@"reslut = %@",resultDic);
NSString*memoStr=[resultDicobjectForKey:@"memo"];
NSString*resultStatus=[resultDicobjectForKey:@"resultStatus"];
if([resultStatusisEqualToString:@"9000"]){
PaySuccesViewController*paySuccessVC=[[PaySuccesViewControlleralloc]initWithMoney:moneyTF.textpayStyle:@"支付宝"out_trade_noStr:nil];
[self.navigationControllerpushViewController:paySuccessVCanimated:YES];
//发一个通知,提醒支付成功,刷新列表
[[NSNotificationCenterdefaultCenter]postNotificationName:@"RefreshCallsList"object:nil];
}elseif([resultStatusisEqualToString:@"4000"]) {
[HUDCommonViewHUDErrorWithHudSuperView:self.viewinfoStr:memoStr];
//self.navView.titleLab.text=@"充值失败";
}elseif([resultStatusisEqualToString:@"6001"]) {
[HUDCommonViewHUDErrorWithHudSuperView:self.viewinfoStr:memoStr];
//self.navView.titleLab.text=@"充值失败";
}elseif([resultStatusisEqualToString:@"6002"]) {
[HUDCommonViewHUDErrorWithHudSuperView:self.viewinfoStr:memoStr];
//self.navView.titleLab.text=@"充值失败";
以上是实现支付宝支付功能在app端需要添加的代码.但是升级到iOS9后有个问题,拉起支付宝客户端支付,支付成功后没有调用[[AlipaySDKdefaultService]payOrder:orderStringfromScheme:appSchemecallback:^(NSDictionary*resultDic) {}];方法,直接黑屏,接着进入home页面,app也不闪退。知道原因的大神指教下呗
在我们应用开发中我们经常在自己的项目中使用到支付,下面我们来谈谈iOS这块的支付;iOS支付主要分为两类,第三方支付和应用内支付(内购);第三方支付包括:支付宝支付、微信支付、银联支付、百度钱包、京东支付等等。应用内支付(In-App- Purchase):在应用程序内购买...
iOS支付 iOS支付分为两类,第三方支付和应用内支付(内购)。 第三方支付包括:支付宝支付、微信支付、银联支付、百度钱包、京东支付等等。 应用内支付(In-App Purchase):在应用程序内购买虚拟商品。如果你在App Store上销售的应用程序,将收到支付金额的7...
前言 其实支付很简单,下载官方的SDK,根据里面的开发者文档和Demo,配置支付,不会可以问客服。(毕竟掏钱了嘛) 支付宝支付 (根据支付宝开发包流程进行操作) 1、下载官方SDK 支付宝SDK下载官方网站 https://doc.open.alipay.com/doc2/...
ps:先来支付宝的。首先集成支付宝的SDK,这个真心是运气加上技术相结合才行~有时候一样的工程,就是给你报错~你能耐他何?然后第二天运行同样的工程,错误消失了~就是这么的神奇!详细的集成流程就不说了,简单大致提一下首先第一步要去与支付宝签约,获得商户ID也就是合作者身份,之...
iOS支付 iOS支付分为两类,第三方支付和应用内支付(内购)。 第三方支付包括:支付宝支付、微信支付、银联支付、百度钱包、京东支付等等。 应用内支付(In-App Purchase):在应用程序内购买虚拟商品。如果你在App Store上销售的应用程序,将收到支付金额的7...
一日一画 第一次下笔? 第二天,画张海滩图试试看。 第三天,国庆节快乐,杯子蛋糕画得好奇怪啊。 继续一日一画,加油! 第四天,星空猫。 一封信。 小兔子 逢考必胜 寿桃
在你走之前,
我想和你再吃一次火锅。
可能今后我都难以亲口告诉你
我很想你,打心底的思念你
你要过得富
而我要足够浪迹
我会给你寄照片
比如在沙漠里的
校园的灯渐次熄灭了。 孩子们该睡觉了,她坐在操场上想着,同时把馒头往嘴里送,两口馒头就一口水,不一会儿就吃好了。正是夏天,温热的风吹来,她感觉很舒服,仿佛能吹去一天的劳累。不经意看到了头顶的月亮,残缺着,恰好被一片乌云朦胧遮掩住了。她很快倒下睡着了。 你感觉得出她十分疲惫,...
手绘什么的,用彩铅吧(*^ω^*)
这里是垃圾阁,装满着我的情绪。因为你们不会知道我的真实身份,所以我会写我内心的想法,以前是用QQ,但最终发现只是为一个喜欢的女孩演戏。在这里我是垃圾阁阁主,我写我的心。iOS 应用内支付(IAP)有可能允许接入第三方支付吗?目前国内支付商有没有就此做什么准备? - 知乎61被浏览<strong class="NumberBoard-itemValue" title="分享邀请回答174 条评论分享收藏感谢收起1添加评论分享收藏感谢收起写回答iOS 11,让一大批第三方应用为之颤抖 - 少数派
请选择你要投稿的专栏
iOS 11,让一大批第三方应用为之颤抖
0" v-cloak>
随着 iOS 系统的完善,越来越多的越狱插件和第三方应用被系统本身的功能或应用代替,在 WWDC 2017 宣布的 iOS 11 中也毫无例外。
这一次,iOS 11 对原生应用的增强、更新和系统框架的调整,也让许多第三方应用感到了危机。越来越强大的备忘录
本次更新中,iOS 11 为备忘录带来了诸多新特性。
现在你可以将单条笔记置顶,方便快速查找;笔记内部可以插入表格,新增等宽字体样式、删除线样式;在文字中间直接插入手写内容,和印象笔记高级功能一样这些内容可以被搜索到。备忘录还增加了扫描文档的功能,并支持简单的滤色和裁剪功能。
这些更新让备忘录越来越具备作为主力笔记应用的特性,一部分文档扫描应用的市场也将受到影响。你可以不再花钱买 1Password 和 LastPass 了
苹果工程师 Ricky Mondello 在 Twitter 表示,WWDC 即将举行一个名为 Password AutoFill for Apps 的会议。iOS 将会为 iCloud 钥匙串进行升级,在原本 Safari 保存和自动填写密码的基础上,也为应用提供此项功能。
在需要帐号密码的页面输入时,系统键盘会显示 ? 符号,通过 Touch ID 验证后会自动填入,同时该功能还支持匹配提醒,优先为你显示和该应用有关的密码信息,非常方便。如果你完全生活在苹果的生态中,那么你可以使用这一功能来替代 1Password 和 LastPass。Spotlight 快速查词还能是卖点吗?
在 iOS 中许多词典应用借助 Spotlight 的特性来完成快速查词,这一功能也成为这些词典应用的主要卖点。但是在 iOS 11 的更新中,可以通过 Spotlight 直接搜索来自系统词典的单词了。iOS 10 第三方快速查词和 iOS 11 快速查词对比特殊效果、滤镜、二维码,这些功能相机都有了
iOS 11 中,Live Photo 现在可以制作循环和来回播放的视频,并且可以生成长曝光图片。同时相机中还增加了许多专业级滤镜,让你在拍摄时即可获得美妙的效果。
还记得每次打开微信才能扫描二维码的的痛吗?现在 iOS 相机可以自动检测镜头画面中的二维码。扫描之后,可立即打开相关网站或 App。你甚至还可以直接扫码来支付。GIF Viewer?不需要的
由于相册不支持 GIF 图片的动态效果查看(只显示静止画面),给很多人造成了 iOS 系统不支持 GIF 图保存的错觉。后来因为微信可以直接通过导入相册中的动图作为表情,才让很多人幡然醒悟到这一事实。
我们通常会使用 GIF Viewer 在 iPhone 中查看动图。现在,iOS 11 已经为相册带来了这一功能,这些动图预览应用,可以从手机中删掉了。图片标注,原生的就够了
在 iOS 11 中截屏后,屏幕的左下角会出现 5 秒钟的预览,点击后即可快速查看,并且可以进行标注和分享。
标注功能包含常用的文本、签名、放大器、剪头、划线、框选等功能,如果你对图片标注没有特殊的需求,那么只用系统自带的标注功能就足够了。通知中心 Widgets 将受到影响
iOS 11 在增加许多新特性的同时,也取消了一些核心功能。这次更新,iOS 11 将不再支持在系统层面上整合某些社交媒体服务(去除 Social Framework)。
这意味着此前设置在系统中的社交媒体帐号(比如 Twitter),将不再支持登陆第三方应用和服务。通知中心 Pin 快捷输入
同时,对于使用 Social Framework 的一些特性来在通知中心中做出一些快捷操作和输入的应用将会受到严重影响。比如深受用户喜爱的 Pin 和 TodayMind 之前都有通过 Social Framework 一些接口,在通知中心弹出一个操作完全不受限制的界面的方式为用户的快捷操作提供可能。现在,这些都不复存在了。如果你还想了解 WWDC 的其它内容,可以持续关注我们的。作为今年 WWDC 大会的受邀媒体,也请关注后续少数派从美国现场带来的独家报道。
评论(${commentLength})
请勾选举报理由
${ item.text }
0" v-cloak>
${ related.released_at * 1000 | friendlyTime }
${related.summary}
${ related.likes_count }
根据国家网信办规定,互联网账号需要实名认证。验证手机号码再进行评论或撰写文章。
点击去验证

我要回帖

更多关于 win8 第三方开始菜单 的文章

 

随机推荐