Android作为管理员/ Facebook页面在Facebook页面发布

问题描述:

我正在整合Facebook sdk。我想直接从我的应用程序发布在Facebook页面上。它应该以管理员身份或网页的页面形式发布,但不幸的是,该网页以用户身份(访问者发布部分)发布。你可以在截图中看到。 P.S我在这个页面有Admin角色。这是我的代码。Android作为管理员/ Facebook页面在Facebook页面发布

     LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() { 
         @Override 
         public void onSuccess(LoginResult loginResult) { 
          shareFacebook(); 
         } 

         @Override 
         public void onCancel() { 

         } 

         @Override 
         public void onError(FacebookException error) { 

         } 
        }); 
        LoginManager.getInstance().logInWithPublishPermissions(ShareScreen.this, Arrays.asList("manage_pages,publish_pages")); 

这是我的图表API发布请求shareFacebook();功能。

GraphRequest request = GraphRequest.newPostRequest(accessToken, pageID+"/videos" 
      , null, new GraphRequest.Callback() { 
     @Override 
     public void onCompleted(GraphResponse response) { 
      progress.dismiss(); 
      if(response.getError()==null) 
       Toast.makeText(ShareScreen.this, "Shared on facebook page.", Toast.LENGTH_LONG).show(); 
      else 
       Toast.makeText(ShareScreen.this, "Error while sharing on facebook page.", Toast.LENGTH_LONG).show(); 
     } 

    }); 
    Bundle params = request.getParameters(); 
    params.putString("description", "Lorum ipsum.."); 
     request.setParameters(params); 
     request.executeAsync(); 

您可以看到我获得了“manage_pages,publish_pages”权限。 在此先感谢您的意见和帮助。

enter image description here

所以我已成功地解决我的问题。我已阅读this documentation,问题在于我使用我的用户帐户的访问令牌发布了新帖子,而不是页面的访问令牌。所以我用我的用户账户的访问令牌做了“我/账户”Graph Api调用。所以我能够获得所有页面的相关访问令牌。现在我可以在facebook页面发帖页面

+0

我正在尝试与我的应用程序做类似的事情。我无法找到任何有关如何在Android Graph API中使用页面访问令牌的文档。我已经生成了一个永不过期的令牌,但我不知道该通过它。你能帮忙吗? – G3M

+0

@ G3M请登录用户访问用户管理的页面。当用户完成登录而不是获取与用户帐户关联的所有页面时。比遍历列表并获取页面的访问令牌。 –