标签:解析 系统 影响 相对 类型 调用 方法 特殊情况 入口
在网了搜了一些解决方案,感觉并不是那么严谨,于是自己动手搞了一下,直接说思路
iOS调起第三方支付和安卓还不一样,安卓是把第三方的支付SDK直接镶嵌在自己的App中,而iOS由于沙盒机制,各个应用之间相互独立,应用之间的调用只有通过系统留下的唯一入口scheme, 所以iOS调起第三方支付是在两个App之间相互切换的。以下从两个角度解析iOS吊起第三方支付
-[AppDelegate applicationWillResignActive:]
-[AppDelegate applicationDidEnterBackground:]
-[AppDelegate applicationWillEnterForeground:]
然后回调支付成功失败方法
-[AppDelegate applicationDidBecomeActive:]
重点思路
typedef enum{
Pay_Type_none = 0,
Pay_Type_wxpay = 1,
Pay_Type_alipay = 2
} Pay_Type;
在点击支付是把Type设置为对应的类型
一般第三方API是尽量避免这种操作的,但是不排除特殊情况,这种方案按照第一种方案解决就没问题了,但是支付成功后,你把App进程杀死,单例对象随着进程也被释放,那肯定是监听不到了。只有等下次打开App去监听订单结果了
标签:解析 系统 影响 相对 类型 调用 方法 特殊情况 入口
原文地址:http://www.cnblogs.com/yang-shuai/p/7457639.html