2011-07-02 11 views
1

これがどこかの場合は謝罪しますが、私はwp7に必要な詳細を見つけるのに苦労しています。C#-Facebook-SDK WP7、Facebookの仕組みの原則は?

私は必要に応じて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; 
     } 
    } 

私が持っているもう1つの質問は、ユーザーが自分のFacebookアカウントに基づいてアクセスを許可する方法です。私はユーザーのアカウントの詳細を保存して、アカウントの詳細を一度設定してから、サインインして電話アプリを使用できるようにしたいのですか?あなたはポストの結果にこのような何か処理することができます

答えて

2

: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>)メソッド呼び出しで行います。
これが完了したら、アプリケーションにローカルにアクセス権を持つファイルを保存することができます。

+0

OK、私はまだこれで苦労しています。たとえば、クライアントがFacebookに承認されていない場合、「postResult」メソッドを起動するものは何もありません...私にはさらに明快さを提供できますか?あなたの助けが大いに評価されるだろう... –