Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.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中的应用缓存适用于Google+;登录,但不';我不在Facebook工作_Ios_Swift_Facebook - Fatal编程技术网

清除iOS中的应用缓存适用于Google+;登录,但不';我不在Facebook工作

清除iOS中的应用缓存适用于Google+;登录,但不';我不在Facebook工作,ios,swift,facebook,Ios,Swift,Facebook,在我的应用程序中,我使用Facebook和Google+实现了登录。 给定场景: 我使用fb帐户1登录 我想使用fb帐户2登录,所以我注销 在safari视图中,我收到一条消息“您已授予应用程序权限” 这是可以预期的。用户需要从Safari浏览器注销。 但我想通过清理cookies和URLCache自己完成: URLCache.shared.removeAllCachedResponses() URLCache.shared.diskCapacity = 0 URLC

在我的应用程序中,我使用Facebook和Google+实现了登录。 给定场景:

  • 我使用fb帐户1登录
  • 我想使用fb帐户2登录,所以我注销
  • 在safari视图中,我收到一条消息“您已授予应用程序权限”
这是可以预期的。用户需要从Safari浏览器注销。 但我想通过清理cookies和URLCache自己完成:

    URLCache.shared.removeAllCachedResponses()
    URLCache.shared.diskCapacity = 0
    URLCache.shared.memoryCapacity = 0

    if let cookies = HTTPCookieStorage.shared.cookies {
        for cookie in cookies {
            HTTPCookieStorage.shared.deleteCookie(cookie)
        }
    }
这段代码会删除Google+的数据,但不会改变Facebook的任何内容。这是预期的行为吗?为什么?
如果没有-清理Facebook数据的方法是什么?

您可以尝试这种方法。当您使用FB登录时,您可以先使用注销

FBSDKLoginManager *manager = [[FBSDKLoginManager alloc] init];
//manager.loginBehavior=FBSDKLoginBehaviorWeb;
[manager logOut];

希望这有帮助。

我在注销期间使用FBSDKLoginManager().logOut()。在此之后,我清除缓存。所以我已经用了:)你解决这个问题了吗?