リンクをありがとう。私はすでに以前にリンクにアクセスしていました。wp7 で Facebook 統合を実装しました。正常に機能しており、壁の支柱を作成できます。
ここに私のコードがあります、
//ユーザーが [Facebook で共有] ボタンをクリックする
private void btnFacebookPost_Click(オブジェクト送信者, RoutedEventArgs e) {
//Check if access tokens are already set.
if (App.accessTokens == null)
{
GetAccessTokens();
}
else
{
//Use the access tokens to post on facebook
}
}
プライベートボイド GetAccessTokens() {
// Navigate user to facebooks login page
// if user has already authenticated your app you'll receive the access tokens directly
webBrowser.Source = new Uri("https://www.facebook.com/dialog/oauth?client_id='your app id'&redirect_uri=https://www.facebook.com/connect/login_success.html&response_type=token&scope='whatever extended permissions you require'");
}
//Web ブラウザの Navigated イベントでアクセス トークンをチェックします //facebook c# sdk を使用して URL からアクセス トークンを取得します
void webBrowser_Navigated(オブジェクト送信者、System.Windows.Navigation.NavigationEventArgs e) {
FacebookClient fbClient = new FacebookClient();
FacebookOAuthResult oauthResult;
if (fbClient.TryParseOAuthCallbackUrl(e.Uri, out oauthResult))
{
// The url is the result of OAuth 2.0 authentication
if (oauthResult.IsSuccess)
{
App.accessTokens = oauthResult.AccessToken;
}
else
{
var errorDescription = oauthResult.ErrorDescription;
var errorReason = oauthResult.ErrorReason;
}
}
else
{
// The url is NOT the result of OAuth 2.0 authentication.
}
}
ここで、C#.net 用の facebook SDK でアクセス トークンを使用して、必要に応じてウォール ポストやその他のトランザクションを作成します。
この方法の問題点は、アプリケーション ユーザーと facebook のログイン ユーザーが異なる可能性があるため、別のアカウントにトランザクションを行うことです。WP7 の SSO は利用できないため、この方法でうまくいくはずです。