1

我正在构建一个使用 facebook SDK 的 android 应用程序。我有一个活动,它执行一些需要 facebook 登录的操作。我设计了这个活动,所以实际的 Session.openActiveSession() 只会在执行需要它的操作时发生,并且只有在没有活动会话存在时才会发生。当活动结束时,我关闭会话。到目前为止,一切都很好。

但是...我注意到每次打开会话时(意思是对活动执行的第一个 facebook 操作),都会显示 LoginActivity。由于我在设备上安装了 FB android 应用程序,因此不需要凭据,登录立即发生并且 LoginActivity 关闭。但是,LoginActivity 仍然显示了一瞬间。它真的很烦人,看起来像屏幕闪烁。我会很高兴失去这个。

感谢任何帮助。

4

2 回答 2

3

好的,这比我想象的要简单。您只需将以下样式添加到清单中的 LoginActivity 即可。

<activity android:name="com.facebook.LoginActivity" android:theme="@android:style/Theme.NoDisplay" />
于 2013-08-04T23:04:07.120 回答
0

Session.openActiveSession()调用方法的参数boolean allowLoginUi需要设置为false. 但要小心以这种方式使用它。如果没有缓存的访问令牌,基本上如果用户之前没有登录过应用程序,您可能需要找出其他类型的登录流程。

于 2013-08-01T17:30:47.700 回答