1

我正在开发一个 android 应用程序,我需要在其中打开一个Facebook login window,然后在成功登录后,I need to move to another intent (or new screen).

因此,一旦用户成功登录,它应该会转到我的应用程序中的另一个屏幕。我很难让这件事发挥作用。我从 Facebook SDK 获得了示例示例,因此我在这些示例上对其进行了测试,我创建了另一个名为Screen2.java(new xml file)只有一个按钮的屏幕来测试它。

因此,在我的情况下,它应该做的是,一旦您成功登录,它就应该转到 . Screen2 intent. 因此,我对本教程Main.java class中提到的此处进行了一些更改,但这对我不起作用。这意味着只要我登录 Facebook,它就不会转到.Screen2 intent我创建的那个。有谁可以帮我离开这里吗?

我只通过添加方法进行了Main.java class如下更改-new IntentonAuthSucceed()

public class SampleAuthListener implements AuthListener {

    @Override
    public void onAuthSucceed() {
        mText.setText("You have logged in! ");
        // mRequestButton.setVisibility(View.VISIBLE);
        // mUploadButton.setVisibility(View.VISIBLE);
        // mPostButton.setVisibility(View.VISIBLE);

        Intent i = new Intent(Main.this, Screen2.class);
        startActivity(i);
    }

    @Override
    public void onAuthFail(String error) {
        mText.setText("Login Failed: " + error);
    }
}

注意:- 我可以登录 Facebook,但登录成功后,它不会进入我的新 Intent。

任何帮助将不胜感激。

4

1 回答 1

0

我的印象是你需要这样的东西

private Session.StatusCallback callback = new Session.StatusCallback() {
    @Override
    public void call(Session session, SessionState state, Exception exception) {
        onSessionStateChange(session, state, exception);
    }
};

private void onSessionStateChange(Session session, SessionState state, Exception exception) {
    if (state.isOpened()) {
        Log.d(TAG, "Logged in...");
        //fire intent
    } else if (state.isClosed()) {
        Log.d(TAG, "Logged out...");
    }
}
于 2013-01-17T03:09:27.517 回答