NewMeRequest in the Facebook Android API in C#

本文关键字:in API Android Facebook the NewMeRequest | 更新日期: 2023-09-27 17:49:48

我一直在尝试做一个请求。通过以下代码在Xamarin Studio中使用Facebook Android API的NewMeRequest:

Request.NewMeRequest (currentSession, new Request.IGraphUserCallback() {
    override void OnCompleted(IGraphUser user, Response Response){
        Console.WriteLine(user.FirstName);
    }
}).ExecuteAsync ();

但是Xamarin Studio给出了一些错误,所以我认为我在c#中没有这样做。有人有一些示例代码如何做到这一点或一些解释为什么这是不工作?

提前感谢!

编辑:

感谢@Guilherme的帮助,它现在没有返回任何错误,但我遇到了以下问题:

我把你的答案改成了这样的代码:

public class MainActivity : Activity, ILocationListener, Request.IGraphUserCallback
{
    ...
    Session currentSession = Session.ActiveSession;
    protected override void OnCreate (Bundle bundle)
    {
        base.OnCreate (bundle);
        SetContentView (Resource.Layout.Main);
        ...
        Console.WriteLine ("current session: " + currentSession.AccessToken);
        Request.NewMeRequest (currentSession, this).ExecuteAsync();
    }
    public void OnCompleted (IGraphUser user, Response response)
    {
        Console.WriteLine (user.Username);
    }
    ...
}

但是现在它不返回当前登录用户的用户名。会话不是问题,因为它是正确的。

NewMeRequest in the Facebook Android API in C#

这在c#上肯定行不通,因为它不支持匿名类

让你的类实现IGraphUserCallback并将其作为参数传递,然后:

Request.NewMeRequest (currentSession, this).ExecuteAsync ();