Xamarin - 自动登录

Xamarin - Auto Login

我正在为 Xamarin Forms 应用程序实施 PayPal 付款方式。当用户第一次购买产品时,他们必须登录他们的 PayPal 账户。但是,我想保存用户的凭据,这样他们就不必在每次使用该应用程序时都继续登录。理想情况下,它应该在他们打开时自动登录。

现在,我要做的是在 WebView 中打开 PayPal 并以编程方式将适当的文本传递到两个登录输入字段(电子邮件和密码),这样我就可以调用登录按钮上的点击功能(不知何故)。

对于我的 XAML 文件,我有:

<WebView x:Name="webView" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand"/>

对于我的 C# 文件,我有:

namespace MyApp.Views
{
   public partial class PaymentPage : ContentPage
   {
       public PaymentPage()
       {
           InitializeComponent();
           webView.Source = "https://www.paypal.com/signin";
       }

       async private void Button_Clicked(object sender, EventArgs e)
       {
           var element = webView.EvaluateJavaScriptAsync("document.getElementsByClassName('loginEmail')[0]");
       }
   }
}

我正在尝试访问电子邮件输入字段并以编程方式输入记录的电子邮件。不幸的是,这一直返回字符串“{}”并将其分配给变量页面。有人知道如何解决这个问题吗?一旦我解决了这个问题,我确定我可以对密码做同样的事情。但是之后我需要以编程方式调用登录按钮单击。因此,如果有人也可以提供帮助,我们将不胜感激。

谢谢!

  1. Do not use PayPal in a webview。使用经过批准的具有地址栏的浏览器视图机制,例如 iOS 上的 Safari 视图控制器或 Android 上的 Chrome 自定义选项卡。

  2. 不要尝试以编程方式操作登录表单。用户必须自己输入他们的凭据,或者更糟的情况是让他们被浏览器保存。

未能遵守上述规定将导致您的帐户and/or您的买家帐户被 PayPal 关闭或冻结,并且需要重设密码。


要在没有登录的情况下创建 PayPal 交易,您正在寻找的功能称为“参考交易”,或最新的 v2 保险库(不是 v1 保险库)。您可以联系 PayPal 的一般业务支持(非技术支持),询问是否批准您的帐户进行参考交易,这可能会也可能不会被批准,具体取决于您的业务历史和用例。