C#-Facebook-SDK WP7,Facebook如何运作的原则?

时间:2011-07-02 11:30:32

标签: c# facebook facebook-c#-sdk

如果这是某个地方,请道歉,但我很难找到wp7所需的详细信息。

我已根据需要在Facebook上创建了应用程序,并且正在检索访问令牌。以下代码发布到Facebook,但我无法得到回复,也无法确定如何监控响应?

public bool fbUpload(string accessToken, Picture pic)
    {
        try
        {
            Stream s = null;
            s = PicturesLoader.LoadFileFromStorage(pic.Url);

            //Sets the byte array to the correct number of bytes
            byte[] imageData = new byte[s.Length];

            s.Read(imageData, 0, System.Convert.ToInt32(s.Length));

            FacebookApp app = new FacebookApp();
            IDictionary<string, object> parameters = new Dictionary<string, object>();
            parameters.Add("access_token", accessToken);
            parameters.Add("message", "TEST - WP7 application [upload pic and comment on wall...]");
            var mediaObject = new FacebookMediaObject { FileName = pic.Name, ContentType = "image/jpeg" };
            mediaObject.SetValue(imageData);

            parameters["source"] = mediaObject;
            FacebookAsyncResult postResult;
            FacebookAsyncCallback fbCB = new FacebookAsyncCallback();
            app.PostAsync(parameters, fbCB);



    return true;
        }
        catch (InvalidCastException ex)
        {
            return false;
        }
    }

我的另一个问题是,您如何允许用户根据自己的Facebook帐户进行访问。我想存储用户的帐户详细信息,以便他们只需设置一次帐户详细信息,然后他们就可以使用我的手机应用程序登录了吗?

1 个答案:

答案 0 :(得分:2)

你可以处理这样的结果:

FacebookAsyncCallback callBack = new FacebookAsyncCallback(postResult);
fbApp.PostAsync(parameters, args, callBack);  

private void postResult(FacebookAsyncResult asyncResult)   
{
  // Do something with asyncResult here;
}

关于第二个问题,您必须要求访问此数据的权限。 您通常在FacebookOAuthClient.GetLoginUrl(<appId>, null, <permissions>)方法调用中执行此操作 完成后,您可以将您有权限的文件存储在应用程序中。