本周早些时候,我在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的弃用,或者我错过了一些东西。
有什么建议吗? 谢谢
答案 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);