我真的不明白为什么non-sealedJEP 360/Java 15 中有一个关键字。对我来说,密封类的扩展应该只是 final 或密封类本身。
提供“非密封”关键字将邀请开发人员进行黑客攻击。为什么我们允许将密封类扩展为非密封类?
我正在开发一个使用FacebookSDK登录的 iOS 应用程序。
登录并杀死应用程序后,currentAccessToken始终为零。它仅在我按下主页按钮并在应用程序仍在后台运行时重新打开它时才有效。
我开始使用警报,因为在杀死应用程序后日志无法正常工作。
AppDelegate.swift
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
let accessToken = FBSDKAccessToken.current()
if accessToken == nil {
Auth.auth().addStateDidChangeListener { (auth, user) in
alert(title: user?.uid ?? "1")
}
alert(title: "2")
} else {
alert(title: accessToken?.userID ?? "3")
}
}
Run Code Online (Sandbox Code Playgroud)
它始终在警报中显示“1”。
这是一个类似的问题: 退出应用程序后 FBSDKAccessToken currentAccessToken nil 或 iOS 9 Facebook Access Token 在未来的应用程序启动时为零
我已经尝试过:
帮助/建议,
提前致谢。