在墙上的对话框立即消失

我使用的是Facebook android SDK,通过在模拟器中添加应用程序ID来运行其提供的示例示例。

问题是我能够正确登录,但是当我点击“Wall Post”按钮时,Facebook webview对话框会打开,类似于标题为“Post on Wall”的登录。 该对话框在几秒钟后立即消失。

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

编辑1:它实际上是一个模拟器的问题。 我已经在其他模拟器中测试过它的工作正常。 但是现在在模拟器中成功的后墙FB webview对话框关闭后返回到应用程序,但在设备中它不。 对话框保持显示空白屏幕,并显示成功发帖ID

编辑2:我也注意到这个对话框消失问题越来越v2.1(在仿真器上测试)。 但它在v2.2及更高版本上正常工作(在仿真器和设备上测试过)


它不是模拟器的问题。 但是它的一个问题,因为你已经在该模拟器中安装原生的facebookapp。

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

你需要做的是:

只要去facebook sdk项目。 然后去Facebook.java

现在在这里,您将获得一个授权方法,如下所示:

 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);
    }
}

只需用下面的代码替换上面的代码:

    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);
//        }
    }

它会狡猾地解决你的问题。 如果没有,然后让我知道。

请享用。

:)

链接地址: http://www.djcxy.com/p/49607.html

上一篇: post on wall dialog disappears immediately

下一篇: How can implement Feed Dialog from Facebook in Android Application?