【发布时间】:2016-06-15 04:16:49
【问题描述】:
我使用 Cocoa Pods 将 Braintree SDK 集成到我的 iOS 应用项目中。安装的 Braintree SDK 版本为 4.1.3。我按照 Braintree 网站 (https://developers.braintreepayments.com/guides/paypal/overview/ios/v4) 上的指南设置自定义按钮,该按钮将启动贝宝用户授权过程。按照网络指南中的建议实施所有内容后,我在安装了 iOS 8.4 的设备上使用沙盒环境测试了贝宝授权。一切都完美无缺,但是当我在安装了 iOS 9.2 的设备上尝试我的应用程序时,我无法使用 paypal 进行授权。我在项目中设置了一些断点,发现在BTAppSwitch.m文件中实现的这个方法总是返回NO:
- (BOOL)handleOpenURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication {
for (Class<BTAppSwitchHandler> handlerClass in self.appSwitchHandlers) {
if ([handlerClass canHandleAppSwitchReturnURL:url sourceApplication:sourceApplication]) {
[handlerClass handleAppSwitchReturnURL:url];
return YES;
}
}
return NO;
}
调用此方法时url的值与此类似:com.myapp.payments://onetouch/v1/success?ba_token=BA-HERMES-SANDBOX-TOKEN
是否有人遇到过类似的问题,您是如何克服的?
【问题讨论】:
标签: ios objective-c paypal authorization braintree