【发布时间】:2018-04-03 14:32:28
【问题描述】:
所以在我的第一个加载屏幕上,我让用户匿名登录 - 所以他们有权访问 Firebase 数据库。代码如下:
Auth.auth().signInAnonymously { (user, error) in
if error != nil {
print(error!.localizedDescription)
SVProgressHUD.showError(withStatus: AlertMessages.authError)
} else {
print("successfully signed in anon")
}
}
successfully signed in anon 每次运行时都会打印出来,这是应该发生的。但是在我的applicationWillTerminate 中,我尝试删除这个匿名用户,这样就不会有任何悬空的用户,但它不起作用。代码如下:
func applicationWillTerminate(_ application: UIApplication) {
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
print("will terminate")
if Auth.auth().currentUser != nil {
print("user exists")
if (Auth.auth().currentUser?.isAnonymous)! {
print("delete anonymous user")
Auth.auth().currentUser?.delete(completion: { (error) in
if error != nil {
print(error!.localizedDescription)
try! Auth.auth().signOut()
} else {
print("delete success")
}
})
}
}
}
打印出来:
will terminate
user exists
delete anonymous user
为什么它从不打印完成块?
【问题讨论】:
标签: ios swift firebase firebase-authentication