【发布时间】:2016-08-31 07:52:24
【问题描述】:
我正在使用延迟链式付款实施自适应付款。 为此,我只需运行以下步骤:
1) 从服务器端我使用https://svcs.sandbox.paypal.com/AdaptivePayments/Preapproval 获取预批准密钥
2) 从客户端我使用 mpl for Android 让用户批准密钥
3) 从服务器端,我使用用户批准的预批准密钥创建付款
问题是我想在沙盒环境中使用 mpl 来测试所有内容,但是当我初始化 PayPal 库(在 Android 中)时,我在 onActivityResult 中收到以下错误:
“应用程序未授权”,错误代码:-1
这是代码:
PayPal pp = PayPal.getInstance();
if (pp == null) {
pp = PayPal.initWithAppID(this, "APP-80W284485P519543T", PayPal.ENV_SANDBOX);
pp.setLanguage("en_US");
pp.setFeesPayer(PayPal.FEEPAYER_SECONDARYONLY);
pp.setShippingEnabled(true);
pp.setDynamicAmountCalculationEnabled(false);
boolean isAppInit = pp.isLibraryInitialized();
}
pp.setPreapprovalKey("PA-64N62546XG272001B");
Intent preapproveIntent = pp.preapprove(preapproval, Taskhunters.getContext());
startActivityForResult(preapproveIntent, REQUEST_CODE);
如果我使用环境 PayPal.ENV_NONE,应用程序已正确初始化,但我需要在沙盒环境中对其进行测试,否则预批准密钥未设置为“已批准”,我无法完成付款流程。
我已经正确创建了三个沙盒帐户,并且我从服务器进行的所有 API 调用都运行良好。
所以问题是: 如何让 MPL 在沙盒环境下工作???
对于那些建议使用嵌入式流程的人,我已经尝试过,但可用性很差。
感谢您的帮助!
【问题讨论】:
标签: android paypal paypal-sandbox paypal-adaptive-payments