首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android Facebook sdk - post on wall对话框立即消失

Android Facebook sdk - post on wall对话框立即消失
EN

Stack Overflow用户
提问于 2011-11-30 15:46:50
回答 1查看 1.5K关注 0票数 2

我使用的是Facebook android SDK,在模拟器中通过添加app id来运行它提供的示例。

问题是我可以正确登录,但当我点击“墙壁帖子”按钮时,Facebook webview对话框打开,类似于标题为"Post on Wall“的登录。此对话框在几秒钟后立即消失。

可能的问题是什么,我哪里错了。

编辑1:这实际上是仿真器的问题。我已经在其他仿真器中测试过了,它工作正常。但是现在在模拟器中,在成功发布后,FB webview对话框关闭并返回到应用程序,但在设备中它不会。对话框停留在那里显示空白屏幕与成功发布id

编辑2:我也注意到这个对话框消失的问题在v2.1(在模拟器上测试)。但它在v2.2和更高版本上运行良好(在模拟器和设备上测试)

EN

回答 1

Stack Overflow用户

发布于 2012-05-11 21:27:32

这不是Emulator的问题。但这是一个问题,因为你已经在模拟器中安装了本地facebookapp。

我得到了同样的问题,现在我已经解决了它。

您需要做的是:

只需转到facebook sdk项目。然后转到Facebook.java

现在,您将获得一个用于授权的方法,如下所示:

代码语言:javascript
复制
 public void authorize(Activity activity, String[] permissions,
        int activityCode, final DialogListener listener) {

    boolean singleSignOnStarted = false;

    mAuthDialogListener = listener;

    THIS CODE IS EDITED BY SHREYASH FOR NOT ALLOW THE DEFAULT FACEBOOK APP
    // Prefer single sign-on, where available.
    if (activityCode >= 0) {
        singleSignOnStarted = startSingleSignOn(activity, mAppId,
                permissions, activityCode);
    }
    // Otherwise fall back to traditional dialog.
    if (!singleSignOnStarted) {
        startDialogAuth(activity, permissions);
    }
}

只需将上面的内容替换为以下内容:

代码语言:javascript
复制
    public void authorize(Activity activity, String[] permissions,
            int activityCode, final DialogListener listener) {

        boolean singleSignOnStarted = false;

        mAuthDialogListener = listener;

//        THIS CODE IS EDITED FOR NOT ALLOW THE DEFAULT FACEBOOK APP
//        // Prefer single sign-on, where available.
//        if (activityCode >= 0) {
//            singleSignOnStarted = startSingleSignOn(activity, mAppId,
//                    permissions, activityCode);
//        }
//        // Otherwise fall back to traditional dialog.
//        if (!singleSignOnStarted) {
            startDialogAuth(activity, permissions);
//        }
    }

它会粗暴地解决你的问题。如果没有,请让我知道。

好好享受吧。

:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8322639

复制
相关文章

相似问题

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