1

我刚刚在 WP7.1 (Mango) 应用程序中尝试了本周早些时候的 Facebook C# SDK v6.0.16。

目标是通过 facebook 应用在用户的墙上发布照片,所以我开始实现登录以获取访问令牌。令人惊讶的是,我无法得到一个很好的组合:

  • 使用桌面页面在手机屏幕上显示非常小
  • 使用移动页面很好,但是登录成功后出现以下错误:

“YOURAPP 发生错误。请稍后再试。API 错误代码:11 API 错误描述:不推荐使用此方法错误消息:不推荐使用 Display=wap 对话框。您可以通过禁用“july_2012”迁移来临时启用它们。他们将于 2012 年 7 月永久停止工作。”

我使用的代码是:

    private Uri GenerateLoginUrl(string appId, string extendedPermissions)
    {
        var parameters = new Dictionary<string,object>();

        parameters["client_id"] = appId;
        parameters["mobile"] = true;
        parameters["redirect_uri"] = "https://www.facebook.com/connect/login_success.html";
        parameters["response_type"] = "token";
        parameters["display"] = "touch";
        if (!string.IsNullOrWhiteSpace(extendedPermissions))
            parameters["scope"] = extendedPermissions;

       return fb.GetLoginUrl(parameters);
    }

并且生成的 urlLogin 是 m.facebook.com/dialog/oauth?etcetcetc,来自 SDK 本身。

在我看来,SDK 本身因 API 的弃用而中断,或者我遗漏了一些东西。

有什么建议吗?谢谢

4

2 回答 2

0

Facebook 不再支持 C# SDK,因此 FB 不会修复其中的问题。

于 2012-04-27T23:54:49.947 回答
0

只需将显示参数更改为页面就足够了

var parameters = new Dictionary<string, object>();
parameters["client_id"] = appId;
parameters["redirect_uri"] = "https://www.facebook.com/connect/login_success.html";
parameters["response_type"] = "token"; 
parameters["display"] = "page";
if (!string.IsNullOrEmpty(extendedPermissions))
{  
    parameters["scope"] = extendedPermissions; 
}
return _fb.GetLoginUrl(parameters);
于 2012-06-03T04:20:06.370 回答