We have observed the wired observation. We are generating UUID from below API
guard let identifierForVendor = UIDevice.current.identifierForVendor else { return "" }
after generating we are storing in Keychain and Coredata while retrieving the UUID 2nd time we are getting from coredata. for few scenarion we have observed that 2 different UUID for the same Device. Can any one have face this issue or observed such kind of behaviour in iOS.
Yes, UUID can change. If the user deletes the app and all other apps created by the app vendor in that case the identifierForVendor can change. In one other case it can change is if it was not installed from the App Store and then later is. For example, you give the client an ad-hoc build to test and then later they install the app from the App Store