【发布时间】:2020-10-24 17:00:02
【问题描述】:
我正在尝试将 payapal 集成到我的移动应用中。我一直在关注我发现的this tutorial。但是当我尝试付款时,我收到一条错误消息,提示登录失败:系统错误。请再试一次。我不确定问题是什么。我的登录信息是正确的,所以我知道这不是问题。我能得到一些帮助吗?提前致谢。顺便说一下,这是我的代码
//Main activity
private static final int PAYPAL_REQUEST_CODE=7171;
private static PayPalConfiguration config=new PayPalConfiguration().environment(PayPalConfiguration.ENVIRONMENT_PRODUCTION)
.clientId(Config.PAYPAL_CLIENT_ID);
@Override
protected void onDestroy() {
stopService(new Intent(this, PayPalService.class));
super.onDestroy();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_all_in_one);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);
overridePendingTransition(R.anim.fragment_close_exit, R.anim.fragment_fade_enter);
getWindow().setStatusBarColor(ContextCompat.getColor(this,R.color.black));
//start paypal service
Intent intent=new Intent(this,PayPalService.class);
intent.putExtra(PayPalService.EXTRA_PAYPAL_CONFIGURATION,config);
startService(intent);
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode==PAYPAL_REQUEST_CODE){
if(resultCode==RESULT_OK){
PaymentConfirmation confirmation=data.getParcelableExtra(PaymentActivity.EXTRA_RESULT_CONFIRMATION);
if(confirmation!=null){
try {
String paymentDetails=confirmation.toJSONObject().toString(4);
startActivity(new Intent(this, PayPalPaymentDetails.class).
putExtra("Payment Details",paymentDetails)
.putExtra("Amount","5.00")
);
} catch (JSONException e) {
e.printStackTrace();
}
}
}else if(resultCode== Activity.RESULT_CANCELED){
Toast.makeText(this, "Cancel", Toast.LENGTH_SHORT).show();
}else if(resultCode==PaymentActivity.RESULT_EXTRAS_INVALID){
Toast.makeText(this, "Invalid", Toast.LENGTH_SHORT).show();
}
}
【问题讨论】: