首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >请求被拒绝的权限。Facebook的Unity

请求被拒绝的权限。Facebook的Unity
EN

Stack Overflow用户
提问于 2014-05-30 16:54:24
回答 1查看 524关注 0票数 2

我一直试图用FB.login("Scope")请求被拒绝的权限,但它再次将我重定向到登录页面。登录后,它会提示我“您已经授权了APPNAME”。FB.login不支持"auth_type“。

有没有人有解决这个问题的办法?

谢谢~愿原力与你同在

EN

回答 1

Stack Overflow用户

发布于 2014-10-15 05:07:50

不确定您一直在尝试为哪个平台重新请求拒绝的权限,可能是针对Canvas。我只能建议Android的解决方案。

首先,我们需要修改提供的AndroidFacebookFB类。为了防止将来插件更新覆盖我们的更改,我们几乎不会接触第三方文件,只需将类设为partial

代码语言:javascript
复制
// AndroidFacebook.cs

namespace Facebook
{
    sealed partial class AndroidFacebook : AbstractFacebook, IFacebook

代码语言:javascript
复制
// FB.cs

public sealed partial class FB : ScriptableObject

现在我们可以用几个方法来扩展现有的类:

代码语言:javascript
复制
using System.Collections.Generic;

namespace Facebook
{
    partial class AndroidFacebook
    {
        public void LoginWithParameters(IDictionary<string, object> parameters, FacebookDelegate callback = null)
        {
            if (parameters == null)
                parameters = new Dictionary<string, object>();
            var paramJson = MiniJSON.Json.Serialize(parameters);
            AddAuthDelegate(callback);
            CallFB("Login", paramJson);
        }
    }
}

partial class FB
{
    public static bool TryLoginWithParametersOnAndroid(IDictionary<string, object> parameters, Facebook.FacebookDelegate callback = null)
    {
        var androidFacebook = FacebookImpl as Facebook.AndroidFacebook;
        if (androidFacebook == null)
            return false;
        androidFacebook.LoginWithParameters(parameters, callback);
        return true;
    }
}

下面是我们如何传递scopeauth_type

代码语言:javascript
复制
var parameters = new Dictionary<string, object>
{
    { "scope", "email" },
    { "auth_type", "rerequest" },
};
var apiCallSucceeded = FB.TryLoginWithParametersOnAndroid(parameters, result =>
{
    ...
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23950604

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档