0

Windows Phone 7 でネイティブ アプリを作成しました。

アプリのユーザーは、新しいユーザーとして登録するときに、ログイン資格情報を提供します。私がやりたいことは、アプリで Facebook の共有のハンドルを与えることです。

ハンドルをクリックすると、選択した画像がユーザーのウォールに投稿され、画像が正常に投稿されたかどうかを示すメッセージがユーザーに表示されます。

問題は、Facebook が Windows Phone 7 ネイティブ アプリの開発環境を提供していないことです。

これに対する代替ソリューションが必要です。

4

1 に答える 1

0

リンクをありがとう。私はすでに以前にリンクにアクセスしていました。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 は利用できないため、この方法でうまくいくはずです。

于 2012-05-25T06:47:19.907 に答える