Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于iOS句柄登录的Facebook SDK_Ios_Xcode_Facebook_Swift_Facebook Ios Sdk - Fatal编程技术网

用于iOS句柄登录的Facebook SDK

用于iOS句柄登录的Facebook SDK,ios,xcode,facebook,swift,facebook-ios-sdk,Ios,Xcode,Facebook,Swift,Facebook Ios Sdk,我正在使用用于iOS的Facebook SDK和用于后端的parse.com SDK(但这对我的问题并不重要) 两个SDK都工作正常 当用户第一次打开我的应用程序(只要他没有登录)时,会出现一个模式视图控制器,上面写着“你没有登录”,以及SDK提供的Facebook登录按钮 当用户点击登录按钮时,Facebook应用程序(或Safari)打开,您可以使用Facebook登录,然后返回到我的应用程序并登录。这也很好 因此,当用户现在登录或他在第二天打开应用程序时,例如,我如何检查他是否登录?我想获

我正在使用用于iOS的Facebook SDK和用于后端的parse.com SDK(但这对我的问题并不重要)

两个SDK都工作正常

当用户第一次打开我的应用程序(只要他没有登录)时,会出现一个模式视图控制器,上面写着“你没有登录”,以及SDK提供的Facebook登录按钮

当用户点击登录按钮时,Facebook应用程序(或Safari)打开,您可以使用Facebook登录,然后返回到我的应用程序并登录。这也很好

因此,当用户现在登录或他在第二天打开应用程序时,例如,我如何检查他是否登录?我想获取要显示的登录用户的整个新闻提要

如果我正在使用

FBSession.activeSession().isOpen
它总是错误的,因为在我想知道的时候,会话未处于活动状态。是否有任何通知或事件处理程序能够了解会话何时处于活动状态

这就是我想要的:

  • 当用户打开应用程序(他已登录)时,视图控制器应显示类似“登录facebook并加载您的新闻提要…”
  • 成功登录后,视图应显示用户新闻提要中的最新文章,例如20篇文章
  • 当用户未登录时,我想用Facebook登录按钮显示我的模式视图控制器
我阅读了FacebookSDK的文档,在谷歌上搜索了很多,但都没有回答我的问题。我只是想知道如何处理那该死的Facebook登录


请帮帮我

当应用程序加载时,FB SDK不会自行加载任何内容。您可以提示它检查用户是否仍连接到您的应用程序,而无需打开登录对话框

对于FB SDK v3.x:

if (!FBSession.activeSession.isOpen) {
    BOOL isLoggedIn = [FBSession openActiveSessionWithAllowLoginUI:NO];
}
FB SDK 4.x现在只需添加


在我看来,理想情况下,你应该通过将一些信息(例如他们的FB id)保存到
NSUserDefaults
,而不是依赖Facebook的SDK来跟踪用户以前是否登录过,但这应该是可行的。

当应用程序加载时,FB SDK不会自行加载任何内容。您可以提示它检查用户是否仍连接到您的应用程序,而无需打开登录对话框

对于FB SDK v3.x:

if (!FBSession.activeSession.isOpen) {
    BOOL isLoggedIn = [FBSession openActiveSessionWithAllowLoginUI:NO];
}
FB SDK 4.x现在只需添加


在我看来,理想情况下,你应该通过将一些信息(例如他们的FB id)保存到
NSUserDefaults
,而不是依赖Facebook的SDK来跟踪用户以前是否登录过,但这应该是可行的。

当应用程序加载时,FB SDK不会自行加载任何内容。您可以提示它检查用户是否仍连接到您的应用程序,而无需打开登录对话框

对于FB SDK v3.x:

if (!FBSession.activeSession.isOpen) {
    BOOL isLoggedIn = [FBSession openActiveSessionWithAllowLoginUI:NO];
}
FB SDK 4.x现在只需添加


在我看来,理想情况下,你应该通过将一些信息(例如他们的FB id)保存到
NSUserDefaults
,而不是依赖Facebook的SDK来跟踪用户以前是否登录过,但这应该是可行的。

当应用程序加载时,FB SDK不会自行加载任何内容。您可以提示它检查用户是否仍连接到您的应用程序,而无需打开登录对话框

对于FB SDK v3.x:

if (!FBSession.activeSession.isOpen) {
    BOOL isLoggedIn = [FBSession openActiveSessionWithAllowLoginUI:NO];
}
FB SDK 4.x现在只需添加


在我看来,理想情况下,您应该通过将一些信息(例如他们的FB id)保存到
NSUserDefaults
中来跟踪用户以前是否登录过,而不是依赖Facebook的SDK,但这应该是可行的。

谢谢,这真的帮了我很大的忙!看起来不是很棘手,但它很有效:)谢谢,这真的帮了我很大的忙!看起来不是很棘手,但它很有效:)谢谢,这真的帮了我很大的忙!看起来不是很棘手,但它很有效:)谢谢,这真的帮了我很大的忙!看起来不是很棘手,但它很有效:))