身份验证错误 e.Message = OAuth 错误 = 权限+错误

2024-02-21

我在 xamarin.android 和 xamarin.ios (PCL) 项目中使用 Xamarin.Auth 版本 1.5.0.3 通过 facebook 的 OAuth API 进行应用程序身份验证/登录。我单击“现在不”链接后出现问题(请观看下面的屏幕截图)。我收到以下错误对话框:

身份验证错误 e.Message = OAuth 错误 = 权限+错误

有什么方法可以禁用此链接或以某种方式修复它吗?或者有人知道为什么会发生这种情况?

iOS 代码(现在可以运行):

public override void ViewDidAppear(bool animated)
{
    base.ViewDidAppear(animated);

    var auth = new OAuth2Authenticator(
        clientId: "myClientId",
        scope: "",
        authorizeUrl: new Uri("https://m.facebook.com/dialog/oauth/"),
        redirectUrl: new Uri("https://www.facebook.com/connect/login_success.html"),
        isUsingNativeUI: true
    );

    auth.Completed += (sender, eventArgs) =>
    {
        if (eventArgs.IsAuthenticated)
        {

        }
        else
        {

        }
    };

    var errorWasAlreadyTrown = false;
    auth.Error += (object sender, AuthenticatorErrorEventArgs eventArgs) =>
        {
                if (!errorWasAlreadyTrown)
                {
                    OAuth2Authenticator auth2 = (OAuth2Authenticator)sender;
                    auth2.ShowErrors = false;

                    App.SuccessfulLoginAction.Invoke();
                    errorWasAlreadyTrown = true;
                }
        };

    PresentViewController(auth.GetUI(), true, null);
}

但它在 Android 上仍然不起作用。所有代码都是相同的,除了在 iOS 上我重写了“ViewDidAppear”方法,在 Android 上重写了“OnElementChanged”方法。最后,我在 iOS 上调用“PresentViewController”,在 Android 上调用“activity.StartActivity”。

我在这里遵循了一些说明:如何在 Xamarin.Forms 中登录 Facebook https://stackoverflow.com/questions/24105390/how-to-login-to-facebook-in-xamarin-forms/24423833#24423833


当单击“现在不”链接时,有一种方法可以隐藏带有错误的对话框:

auth.Error += (sender, eventArgs) =>
{
  OAuth2Authenticator auth2 = (OAuth2Authenticator)sender;
  auth2.ShowErrors = false;
  auth2.OnCancelled();
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

身份验证错误 e.Message = OAuth 错误 = 权限+错误 的相关文章

随机推荐

  • 可以使用其他编程语言(python/C#)中的 Mathematica 吗?

    是否可以使用其他语言的 Mathematica 计算能力 我需要执行一些复杂的操作 顺便说一句 不一定是符号操作 如果能够直接从我的 python c 程序调用 Mathematica 的函数或运行 Mathematica 的代码 那就太好
  • 如何在rails 3.2.1中使用link_to和ajax

    我在用着轨道3 2 1 如何将 link to 与 remote gt true 一起使用 我在控制器中的方法 def clickme clk you click me respond to do format format js rend
  • Spring Boot 2 - 更改 Jar 名称

    我在 Gradle 项目中使用 Spring Boot 2 在 Jenkins 中构建 jar 我想更改该 jar 文件的名称 默认情况下 Spring Boot 2 使用 Gradle 属性rootProject name 可以在 set
  • 等待 JUnit 测试用例中测试的代码生成的所有线程

    如何确保在 JUnit 测试用例中 由被测方法直接 间接生成的所有线程都已完成该作业 以便我可以断言最终结果 Test public void testMethod Result result method may spawn multip
  • EF Composite 关键流畅 API

    我正在尝试映射实体的复合键 public class Customer public int CustomerId get set public virtual List
  • write() 参数必须是 str,而不是字节 [重复]

    这个问题在这里已经有答案了 我是一名初学者程序员 正在阅读 Python 初学者 一书 我在尝试为问答游戏编写高分函数时遇到了一个问题 当调用函数 highscore user highscore 时 我尝试相应地分配参数 以便我可以将信息
  • 获取 keyvault 的访问令牌

    我在本地发布了一个 Web 应用程序并将其连接到 IIS 当我尝试导航到该网站时 它在启动时失败 并在尝试访问该网站时出现以下错误keyvault 应用程序启动异常 Microsoft Azure Services AppAuthentic
  • 如何通过 Bootstrap 选项卡使用 AJAX 加载?

    我使用了 bootstrap tabs js 并且它运行得很好 但我没有找到有关如何通过AJAX请求加载内容的信息 那么 如何通过 bootstrap tabs js 使用 AJAX 加载呢 在 Bootstrap 2 0 及更高版本中 您
  • 如何通过网络驱动器快速获取 .csv 文件的最后一行?

    我存储了数千个时间序列 csv网络驱动器上的文件 在更新文件之前 我首先获取文件的最后一行以查看时间戳 然后使用该时间戳之后的数据进行更新 如何快速获取最后一行 csv文件通过网络驱动器 这样我就不必加载整个巨大的 csv文件只使用最后一行
  • 什么是获得颜色以使图像上的文本突出的好算法?

    例如下图 背景是一张照片 照片中央有一个 伊涅斯塔 这个人物 但由于颜色不好 字符有些难以阅读 有没有什么好的算法可以获取颜色以使图像上的字符突出 您可以使用以下技巧 而不是制作矩形背景 确实看起来不太好 选择两种对比色 例如白色和黑色 使
  • 使用php获取两个日期之间的总时间差[重复]

    这个问题在这里已经有答案了 可能的重复 如何使用 PHP 计算两个日期之间的差异 https stackoverflow com questions 676824 how to calculate the difference betwee
  • 为什么我不能编写与 Box::new 类型相同的函数?

    如果我编写一个接受一个类型参数的函数 f32 相对于例如 f32 我得到一个错误 the trait bound f32 std marker Sized is not satisfied 文档说这是因为 f32 没有编译时已知的大小 合理
  • 如何将 Autofac 与 WepApi 2 和 Owin 集成?

    我正在使用此包将 Autofac 与我的 WebApi Owin 应用程序集成 https www nuget org packages Autofac WebApi2 Owin https www nuget org packages A
  • 合并包含COCO人物关键点注释的json文件

    我使用注释了一些图像可可注释器 https github com jsbroks coco annotator 我想将这些注释与现有注释 person keypoints train2017 json 和 person keypoints
  • MobileVLCKit 编译时失败

    我正在尝试在我的应用程序中使用适用于 iOS 的 MobileVLCKit 我按照 给出的步骤进行操作构建 iOS 框架 https wiki videolan org VLCKit 我已在 Xcode 5 中将部署目标设置为 iOS 7
  • 在 Slick 3 的事务中执行非数据库操作

    我无法理解新的 SlickDBIOActionAPI 文档中似乎没有很多示例 我使用的是 Slick 3 0 0 我需要执行一些数据库操作 还需要对从数据库接收的数据进行一些计算 但所有这些操作都必须在单个事务内完成 我正在尝试执行以下操作
  • 如何更新jqgrid中的数据值

    我试图在加载时永久更新 jqgrid 中的单元格 我知道我可以使用setCell但这只会更新该页面的值 如果我回到该页面 如果我没有明确执行另一个setCell对于单元格 显示旧值 我也尝试过 setRowData 但它似乎在做同样的事情
  • 无法提交 JPA 事务:事务标记为 rollbackOnly

    我在我正在开发的应用程序之一中使用 Spring 和 Hibernate 但在处理事务时遇到了问题 我有一个服务类 它从数据库加载一些实体 修改它们的一些值 然后 当一切都有效时 将这些更改提交到数据库 如果新值无效 我只能在设置后检查 我
  • 使用c#从图像中裁剪十字矩形

    我想做的基本上是从图像中裁剪一个矩形 但是 它应该满足一些特殊情况 我想在图像上裁剪一个有角度的矩形 我不想旋转图像并裁剪矩形 如果裁剪超出图像大小 我不想裁剪空的背景颜色 我想从起点的后面进行裁剪 当矩形尺寸完成时 它将在起点处结束 我知
  • 身份验证错误 e.Message = OAuth 错误 = 权限+错误

    我在 xamarin android 和 xamarin ios PCL 项目中使用 Xamarin Auth 版本 1 5 0 3 通过 facebook 的 OAuth API 进行应用程序身份验证 登录 我单击 现在不 链接后出现问题