我们的iPad应用程序使用iOS SDK v1.0.5在沙箱模式下成功处理了付款。然而,我们在测试应用程序时发现了一个缺陷。请查找以下步骤。
- 登录PayPal
- 使用电子邮件或电话并键入凭据
- 点击发送付款。您将看到付款完成屏幕。单击完成按钮
- 现在打开您的沙箱帐户并更改密码/pin(配置文件->更新密码)
- 然后转到应用程序并尝试再次付款。PayPal sdk直接将您导航到确认页面
- 单击发送付款
PayPal SDK允许用户使用旧凭据(密码/密码)进行支付。
这是已知问题还是我遗漏了什么?
还有什么方法可以在每次付款后注销用户。(强制用户在每次尝试付款时登录,而无需手动单击注销按钮)。
moka,我认为你描述的场景是可以的。
在您的应用程序中,用户登录到她的PayPal帐户,向您付款,并选择不从PayPal注销。
稍后,在您的应用程序中,她仍然登录到她的PayPal帐户,即使在其他地方她更改了密码。因此,她仍然可以从这个账户中支付给你。
我觉得这一切都很好。
关于你的第二个问题:
当您调用[PayPalPaymentViewController initWithClientId:receiverMail:payerId:pay:delegate:]时,SDK会使用payerId来确定这是新用户还是返回用户。
因此,如果您每次调用SDK时都更改payerId,那么每次都会被解释为新用户,因此需要新的PayPal登录。(例如,您可以将payerId设置为类似[NSString字符串WithFormat:@"%d",rand()]的值。)
--Dave Goldman(eBay/PayPal/card.io)
将类似的PayPalConfiguration实例的rememberUser
属性设置为NO
payPalConfiguration=[[PayPalConfiguration alloc] init];
payPalConfiguration.rememberUser=NO;
然后它会要求每次登录。