我的 C# 应用程序调用支付应用程序,用户选择卡或 mbway 就完成了。
CrossCurrentActivity.Current.Activity.StartActivityForResult(intent, ActivityRequestCode);
问题是所有付款都被拒绝,不仅如此,通过 OnActivityResult 返回的意图为空。结果代码返回为“已取消”。
protected override void OnActivityResult(int requestCode, Result resultCode, Intent intent)
{
base.OnActivityResult(requestCode, resultCode, intent);
if (requestCode == 123456)
{
string status = "";
string errorCode = "";
string date = "";
string reference = "";
string amount = "";
Toast.MakeText(Android.App.Application.Context, "Resultcode: " + resultCode, ToastLength.Long).Show();
if (intent != null && intent.Extras != null)
{
Toast.MakeText(Android.App.Application.Context, "Sucesso", ToastLength.Long).Show();
Bundle bundle = intent.GetBundleExtra(CALLIN_STATUS_KEY);
if (intent.Extras.ContainsKey(CALLIN_ERROR_KEY))
errorCode = (string)bundle.GetString(CALLIN_ERROR_KEY);
if (intent.Extras.ContainsKey(CALLIN_STATUS_KEY))
status = (string)bundle.GetString(CALLIN_STATUS_KEY);
if (intent.Extras.ContainsKey(CALLIN_DATE_KEY))
date = (string)bundle.GetString(CALLIN_DATE_KEY);
if (intent.Extras.ContainsKey(CALLIN_AMOUNT_KEY))
amount = (string)bundle.GetString(CALLIN_AMOUNT_KEY);
if (intent.Extras.ContainsKey(CALLIN_REF))
reference = (string)bundle.GetString(CALLIN_REF);
Toast.MakeText(Android.App.Application.Context,
"STATUS2: " + status +
"\nError: " + errorCode +
"\nAmount: " + amount +
"\nDate: " + date +
"\nReference: " + reference
, ToastLength.Long).Show();
}
else
{
Toast.MakeText(Android.App.Application.Context, "Intent nulo", ToastLength.Long).Show();
}
}
}
任何帮助将不胜感激。
我需要了解它的内容,这样我才能继续调试。