Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.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 API;检测用户是否在不触发对话框的情况下登录?_Ios_Facebook - Fatal编程技术网

iOS上的Facebook API;检测用户是否在不触发对话框的情况下登录?

iOS上的Facebook API;检测用户是否在不触发对话框的情况下登录?,ios,facebook,Ios,Facebook,我有一个iOS应用程序,通过Facebook的API使用Facebook Connect 如果我在用户进行身份验证后调用Facebook对象上的isSessionValid方法,它会像预期的那样返回true。如果我在应用程序默认设置中存储并检索访问令牌和过期日期,我还可以在应用程序启动时使其返回true 我正在寻找的是一种方法,在刚安装该应用程序的用户首次启动该应用程序时,确定他们是否登录到Facebook。我希望在不触发权限对话框的情况下执行此操作。可能吗 其想法是根据用户是否登录Facebo

我有一个iOS应用程序,通过Facebook的API使用Facebook Connect

如果我在用户进行身份验证后调用Facebook对象上的isSessionValid方法,它会像预期的那样返回true。如果我在应用程序默认设置中存储并检索访问令牌和过期日期,我还可以在应用程序启动时使其返回true

我正在寻找的是一种方法,在刚安装该应用程序的用户首次启动该应用程序时,确定他们是否登录到Facebook。我希望在不触发权限对话框的情况下执行此操作。可能吗

其想法是根据用户是否登录Facebook来定制第一个屏幕


谢谢。

我相信你可以在Facebook.m中调用isSessionValid方法来实现这一点

- (BOOL)isSessionValid {
return (self.accessToken != nil && self.expirationDate != nil
        && NSOrderedDescending == [self.expirationDate compare:[NSDate date]]);

  }

对于您的Facebook对象

此函数在应用程序第一次启动时始终返回false,无论用户是否实际登录到Facebook。这是有道理的,因为该应用程序尚未存储令牌,否则将无法知道FB应用程序发生了什么。很可能不可能做我想做的事,但我想在放弃之前确定一下。