删除预定的Facebook页面帖子时出现错误:pages_manage_engagement不可用

问题描述

在我们的android应用中,我们提供了在Facebook页面上安排和发布帖子的功能。并且我们还提供了删除预定帖子的功能。

上述功能的使用,我们已经通过App Review获得了所需的权限( publish_pages,manage_pages )。

所有功能均可在我们的Android和iOS平台上完美运行。但最近几周,我们在删除Android平台上的日程安排帖子时遇到了错误。当我们检查了Android平台上此功能的问题后,便收到以下错误。

错误:

{Response: responseCode: 403,graphObject: null,error: {HttpStatus: 403,errorCode: 200,subErrorCode: -1,errorType: OAuthException,errorMessage: (#200) The permission(s) pages_manage_engagement are not available. It could because either they are deprecated or need to be approved by App Review.}}

基于上述错误,我们已经检查了Facebook平台上的文档,它说“ pages_manage_engagement ”权限用于“创建,编辑和删除您的页面发布的评论”。 我们没有提供与页面评论相关的任何功能。 重要的是,以上错误来自删除预定的帖子。我们已经获得了publish_pages的许可。我已附上图片。

enter image description here

Facebook登录和共享依赖性

implementation 'com.facebook.android:facebook-login:5.8.0'
implementation 'com.facebook.android:facebook-share:5.8.0'

因此,我要求您检查并验证上述问题。 让我知道进一步的流程和解决方案。

谢谢。

解决方法

在我用于删除帖子的代码中,没有任何变化。

/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),"/" + "post_id",null,HttpMethod.DELETE,new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();

我在这里直接传递 post_id 来删除预定的帖子。 它可以在Graph API v7.0之前完美运行。

但是在弃用publish_pagesmanage_pages权限之后,它不起作用。

解决方案

我在 post_id 之前添加了 page_id

“ PAGE_ID” +“ _” +“ POST_ID”

/* make the API call */
new GraphRequest(
    AccessToken.getCurrentAccessToken(),"/" + "page_id" + "_" + "post_id",new GraphRequest.Callback() {
        public void onCompleted(GraphResponse response) {
            /* handle the result */
        }
    }
).executeAsync();

它就像一种魅力。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...