如何通过Xamarin调用PayTM Android SDK?

How to call PayTM Android SDK via Xamarin?

我正在尝试使用 this link 中给出的 android 示例将 PayTM 集成到 Xamarin 应用程序中。我已经从 PayTM maven 存储库下载了 appinvokesdk-1.2.aar,并使用 Xamarin Android 绑定库生成了必要的本机出价。我创建了一个名为 IPayTMService 的接口,它存在于我的 Xamarin.Forms 公共项目中。代码如下

public interface IPayTMService
{
    void MakePayment(string orderId,string txnToken, string amount);
    string Message { get; set; }
}

并且代码在Xamarin.Android项目中实现为

public class AndroidPayTMService : IPayTMService
{
    private Activity _activity;

    public AndroidPayTMService(Activity activity)
    {
        _activity = activity;
    }

    public string Message { get; set; }

    public void MakePayment(string orderId, string txnToken, string amount)
    {
        var mid = "<my mid>";
        var callbackurl = $"https://securegw-stage.paytm.in/theia/paytmCallback?ORDER_ID={orderId}";
        var paytmOrder = new PaytmOrder(orderId, mid, txnToken, amount, callbackurl);

        var txnManager = new TransactionManager(paytmOrder, new PaytmPaymentTransactionCallback(this));
        txnManager.StartTransaction(_activity, 2);
    }
}

在我的 MainActivity.cs 中 Xamarin.Android 应用程序中。我写了下面的代码来启动paytm服务

var app = new App();
app.PayTMService = new AndroidPayTMService(this);

LoadApplication(app);

根据我的 Xamarin.Forms 公共代码,我按如下方式调用该服务

async void PayTM_Clicked(object sender, EventArgs e)
    {
        var orderId = Guid.NewGuid().ToString();
        var custId = Guid.NewGuid().ToString();

        var token = await payTM.GetToken(orderId, custId, amount.Text);
        var app = (App)Application.Current;
        app.PayTMService.MakePayment(orderId, token, amount.Text);
    }

当我 运行 这个应用程序时,我的 androidpaytmservice

这行出现错误
txnManager.StartTransaction(_activity, 2);

如下图所示

我的问题有两个

  1. 我做的整合对吗?
  2. 你能帮我解决我在这里遗漏了什么吗?

将项目迁移到 AndroidX。如果您使用的是最新的 Visual Studio 和 Xamarin.Forms >4.5.X 那么它是在内部完成的。除了安装AndroidX nugets。

https://devblogs.microsoft.com/xamarin/androidx-for-xamarin/

https://docs.microsoft.com/en-us/xamarin/xamarin-forms/platform/android/androidx-migration