AWS Cognito自动登录,即使删除并重新安装了该应用程序



我最近创建了一个带有Cognito用户池的AWS移动集线器项目,当我登录时,它会记住登录的用户,一旦我删除了应用程序(无登录(并重新安装了应用程序,并重新安装了应用程序,它自动登录到上一个帐户,如何防止该问题?

P.S-我正在使用最新的AWS移动枢纽iOS SDK

这是因为Cognito Framework将登录信息存储在键链中,即使在删除了应用程序之后,该信息仍然存在。解决此问题的一种方法是检查该应用在应用程序启动时是否是当前用户的启动和注销。

检查新的安装&更新在我的应用程序中,我通常将构建编号存储在UserDefaults中,并检查它是nil还是在应用程序开始时已更改:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    let previousBuild = UserDefaults.standard.string(forKey: "build")
    let currentBuild = Bundle.main.infoDictionary!["CFBundleVersion"] as! String
    if previousBuild == nil {
        //fresh install
        //logout of current user
    } else if previousBuild != currentBuild {
        //application updated
    }
    UserDefaults.standard.set(currentBuild, forKey: "build")
    return true
}

相关内容

最新更新