标签:
1.当程序调用支付宝/快捷支付客户端后,完成订单或者取消订单后无法回到APP页面。
这个问题比较好解决,首先代码调用支付宝提交订单的方法里有一个Scheme的参数,这个是应用程序的Scheme。我这里是"WeCast.iHouse":
[AlixLibService payOrder:orderString AndScheme:@"WeCast.iHouse" seletor:@selector(paymentResult:) target:self];
并且,在程序的Info.plist的URL Schemes也要写入相同的名称:
这样支付宝在回调时就知道是哪个应用程序打开的,再重定向到这个应用程序。
2.当没有安装支付宝/快捷支付客户端的情况下,如果“取消”下载支付宝客户端,那程序会调用网页的形式进行交付操作。但出现一个致命的bug。就是当点击“返回”按钮时,程序会闪退。
这个问题太怪异了,错误的地方在UIWindow setRootViewController的时候。
我看了一下AppDelegate文件,是这样的:
WCHomeViewController* homeController = [[WCHomeViewController alloc] init];
self.window.rootViewController = homeController;
[homeController release];
解决方案是将homeController声明为属性,所以我改为:
AppDelegate.h:
@property (strong, nonatomic) WCHomeViewController * homeController;
AppDelegate.m:
_homeController = [[WCHomeViewController alloc] init];
self.window.rootViewController = _homeController;
OK,这两个问题解决了!
标签:
原文地址:http://www.cnblogs.com/jiqiaochun/p/4906429.html