2015-02-24 46 views
0

我以访客用户身份登录。我强制退出应用程序(快速按回家按钮,在应用程序上刷卡 - 只是为了澄清)。我重新启动应用程序。匿名用户仍然登录。我认为这将在我的AppDelegate中如此简单:解析:当用户强制终止应用程序时注销匿名用户

func applicationWillTerminate(application: UIApplication) { 
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 
    PFUser.logOut() 
} 

显然,事实并非如此。我是否需要在applicationWillTerminate中将PFUser.currentUser设置为零?或者有更好的方法来处理这种情况?

回答

1

如果用户强制退出您的应用,则不会通知您的应用。没有办法想要(可靠)。

作为替代方案,您可以在应用启动时将用户注销。

+0

因此,当用户强制退出应用程序时,8.0几乎总是将它们返回到以前的状态。它有点类似于注销函数调用不够快的竞争条件?因此,当用户启动和应用程序时,您只是想检查一下是否有人登录并注销了它们? – lostinthebits 2015-02-24 03:22:21

+1

iOS不保证在强制退出应用程序时调用applicationWillTerminate(_ :)',即使它执行了,您的应用程序也会在'PFUser.logOut()'使用的后台进程完成之前终止。所以,是的,我说你可以在应用程序启动时调用'PFUser.logOut()'来近似你想要的。 – 2015-02-24 03:27:05