wap对话在2012年7月被弃用

时间:2012-04-26 21:38:15

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

本周早些时候,我在WP7.1(芒果)应用程序中尝试过Facebook C#SDK v6.0.16。

目标是通过Facebook应用在用户的墙上发布照片,因此我开始实施登录以获取访问令牌。 不好意外,我无法得到一个工作正常的组合:

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

“YOURAPP发生错误。请稍后再试。 API错误代码:11 API错误说明:不推荐使用此方法 Eror消息:Display = wap对话框已被弃用。 Yo可以通过禁用“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是来自SDK本身的m.facebook.com/dialog/oauth?etcetcetc。

在我看来,SDK本身打破了API的弃用,或者我错过了一些东西。

有什么建议吗? 谢谢

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分: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);