Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Facebook应用程序链接主机API响应为403权限错误-Android_Android_Facebook_Facebook Graph Api - Fatal编程技术网

使用Facebook应用程序链接主机API响应为403权限错误-Android

使用Facebook应用程序链接主机API响应为403权限错误-Android,android,facebook,facebook-graph-api,Android,Facebook,Facebook Graph Api,我按照Android的Facebook API教程设置Facebook登录,查看新闻源并向Facebook发布新消息。所有这些都有效。现在我想将应用程序链接关联到我的应用程序,这样深度链接就可以工作了。我更改了post代码,将请求提交到/app/app\u link\u主机与我的链接,以便将其关联,并返回此错误响应: 05-12 13:59:25.002: E/response(32412): {Response: responseCode: 403, graphObject: null, e

我按照Android的Facebook API教程设置Facebook登录,查看新闻源并向Facebook发布新消息。所有这些都有效。现在我想将应用程序链接关联到我的应用程序,这样深度链接就可以工作了。我更改了post代码,将请求提交到/app/app\u link\u主机与我的链接,以便将其关联,并返回此错误响应:

05-12 13:59:25.002: E/response(32412): {Response:  responseCode: 403, graphObject: null, error: {HttpStatus: 403, errorCode: 200, errorType: OAuthException, errorMessage: (#200) Permissions error}, isFromCache:false}
这是我的应用程序链接主机代码

    Session session = Session.getActiveSession();
    Bundle params = new Bundle();
    params.putString("name", "App Post");
    params.putString("android", "[{\"url\": \"myapp://post/" + appLinkHostId + "\",\"package\": \"com.myapp.socialnetworktest\"}]");
    params.putString("web", "{\"should_fallback\": false}");
    /* make the API call */
    new Request(
        session,
        "/app/app_link_hosts",
        params,
        HttpMethod.POST,
        new Request.Callback() {
            public void onCompleted(Response response) {
                Log.e("response", response.toString());
            }
        }
    ).executeAsync();

我想,一旦我得到这个工作,我可以使用我提交的url作为一个新的Facebook帖子的url和深度链接将工作。这是正确的吗?

这些呼叫(到
/app/app\u link\u主机
)需要使用app-access令牌在服务器端进行-如果您使用Android代码进行呼叫,则可能是错误的,我认为可以从Android进行呼叫。在Facebook的这个页面上,发布部分有关于Android的说明。对于发布带有应用程序链接的帖子,是的,并且有许多语言的自动生成的示例代码(从技术上讲,它可以在Android上运行),但是您的呼叫是为您的应用程序设置应用程序链接主机的呼叫。该调用需要一个应用访问令牌(代表应用本身而不是其用户进行调用)-这是一个相对很少执行的操作,不应该从客户端代码执行-您的示例很可能失败,因为您使用的是用户访问令牌/sessionI,请参见该页“请注意,如果没有可用于设置应用程序链接的web服务器,则可以使用应用程序链接宿主API。如果您使用的是纯移动应用程序,则这种情况很常见。“我希望使用应用程序链接托管API,而不必在服务器端编程。我不确定我是否使用了正确的API。这里也是一样。安迪,如果你能找出问题,请发邮件@lgy,你是Facebook的吗?如果是这样的话,你应该明确地告诉你的文档团队,他们在写作指导方面很差劲。那些不是你好世界的东西。他们的写作就像一个简单的教程,没有提及任何内部功能。