2017-07-28 51 views
4

所以我在我的应用程序中集成了paypal-android-sdk:2.15.3,它在Sandbox中按预期工作。现在我想转向生产。PayPal for Android不会切换到生产环境

我将环境切换到PayPalConfiguration.ENVIRONMENT_PRODUCTION并将客户端ID切换到生产客户端ID。什么情况是,第一个我无法登录使用我的真实PayPal账户,第二我看到蓝色的沙盒按钮,如下截图:

enter image description here

我的代码:

PayPalConfiguration config = new PayPalConfiguration() 
       .environment(CustomBuildConfig.PAY_PAL_CONFIG_ENVIRONMENT) 
       .clientId(CustomBuildConfig.PAY_PAL_CONFIG_CLIENT_ID); 

     PayPalPayment thingToBuy = new PayPalPayment(new BigDecimal(value), currency, item, 
       PayPalPayment.PAYMENT_INTENT_SALE); 
     Intent intent = new Intent(getContext(), PaymentActivity.class); 
     intent.putExtra(PayPalService.EXTRA_PAYPAL_CONFIGURATION, config); 
     intent.putExtra(PaymentActivity.EXTRA_PAYMENT, thingToBuy); 
     startActivityForResult(intent, REQUEST_CODE_PAYPAL_PAYMENT); 

其中:

PAY_PAL_CONFIG_ENVIRONMENT = PayPalConfiguration.ENVIRONMENT_PRODUCTION; PAY_PAL_CONFIG_CLIENT_ID = “制作客户端ID”;

编辑:相同的生产客户端ID已经在使用中,并为iOS客户端工作。

+0

[Android PayPal集成:沙盒到生产](https://stackoverflow.com/questions/19034468/android-paypal-integration-sandbox-to-production) – RonTLV

回答

2

沙盒模式是一种测试模式,它可以在不触摸任何真实的PayPal账户的情况下作为实际流程运行。这会导致您无法使用实际凭据登录的问题,因为Sandbox支持使用测试凭证进行登录。
因此,要使您的凭证可以工作,您必须禁用沙盒模式。
在这里看到: - Disabling Sandbox mode
此外,了解详细的沙盒: - herehere

+0

根据集成步骤在这里https://github.com/paypal/PayPal -Android-SDK 我需要做2件事:1.将client_id切换到生产一个2.开关ENVIRONMENT_PRODUCTION。 从上面的答案显然不是我,我应该怎么做。我的Android集成中没有testMode,它似乎是REST API集成的一部分,而不是Android –

+0

尝试从上面的stackoverflow链接禁用沙盒模式。禁用它将启用您的实际凭据。 –

+0

您是在谈论这些步骤:PayPal帐户,然后单击配置文件>我的销售工具> API访问>请求/查看API凭证>请求API签名? –