验证Facebook .NET sdk

时间:2016-01-11 18:54:34

标签: c# facebook windows-runtime windows-phone-8.1 facebook-c#-sdk

我正在创建一个Windows Phone 8.1 RT应用程序。我已经安装了facebook和facebook.client sdks来设置登录和共享目的。出于登录目的,我已按照上述here的步骤进行操作。

My App.xaml.cs OnActivated函数如下所示:

protected override void OnActivated(IActivatedEventArgs args)
    {
        base.OnActivated(args);
        var protocolArgs = args as ProtocolActivatedEventArgs;
        if (protocolArgs != null)
        {
            LifecycleHelper.FacebookAuthenticationReceived(protocolArgs);
        }
        Session.OnFacebookAuthenticationFinished += OnFacebookAuthenticationFinished;

    }

这里是OnFacebookAuthenticationFinished方法

private async void OnFacebookAuthenticationFinished(AccessTokenData session)
    {
        await Session.CheckAndExtendTokenIfNeeded();
        if (Constant.fbSignup)
        {
            User fbUser = new User();
            Account userAccount = new Account();
            try
            {
                FacebookClient fbClient = new FacebookClient(session.AccessToken);
                dynamic result = await fbClient.GetTaskAsync("me?fields=id,first_name,last_name,email,location");
                fbUser.FirstName = result.first_name;
                fbUser.LastName = result.last_name;
                userAccount.UserName = result.email;
                fbUser.UserAccount = userAccount;
                //fbUser.City = result.location.name;
                Constant.User = fbUser;
                RootFrame.Navigate(typeof(SignUpPage));
            }
            catch (Exception ex)
            {
                await new MessageDialog(ex.Message).ShowAsync();

            }

        }

登录正常。

现在我想使用Session.ShowFeedDialog()分享一些内容。我已按照提到的here步骤在对话框中创建AppRequests。 我从一个StoreDetailsPage.xaml.cs页面调用ShowFeedDialog方法 以下所有代码都在StorePageDetails.xaml.cs

Session.ShowFeedDialog("", link, linkDescription, linkCaption);

发布也很好。但我需要检查帖子是否成功。为此,我尝试了

Session.OnFacebookFeedFinished = Success;

成功的地方

public delegate void FacebookDelegate(FBResult result);

void Success(FBResult result)
    {
        //Code to check if post was successful
    }

所以我的问题是在关闭ShowFeedDialog之后调用OnActivated事件并且永远不会达到或不调用成功委托方法。 我之前没有使用过代表,所以我不知道那里是否有什么问题。此外,由于我无法进入此功能,我还没有弄清楚后验证的逻辑应该是什么。所以任何建议都将非常感谢

0 个答案:

没有答案