2

我有一个需要 Facebook 登录的应用程序,我根据演示示例实现了该应用程序(不使用UiLifecycleHelper,尽管我尝试添加它,但似乎没有什么区别)。基本上,当我点击登录按钮,关闭 Facebook 登录网络对话框,然后再次点击该按钮时,我得到了这个异常:

06-10 11:48:48.780: E/AndroidRuntime(6482): java.lang.UnsupportedOperationException: Session: an attempt was made to open an already opened session.
06-10 11:48:48.780: E/AndroidRuntime(6482):     at com.facebook.Session.open(Session.java:947)
06-10 11:48:48.780: E/AndroidRuntime(6482):     at com.facebook.Session.openForRead(Session.java:385)
06-10 11:48:48.780: E/AndroidRuntime(6482):     at com.[my package].SocialAbstractActivity$FacebookClickListener.onClick(SocialAbstractActivity.java:140)

这是由以下代码引起的:

if(!activeSession.isOpened()) {
    activeSession.openForRead(getReadOpenRequest());
    showProgressDialog(R.string.dialog_logging_title, R.string.dialog_logging_message);
}

为什么activeSession报告它没有打开,然后抛出这个异常?

此外,为什么即使在调用之后我仍然会得到这个错误activeSession.closeAndClearTokenInformation();

4

0 回答 0