How to preserve identifierForVendor in ios after uninstalling ios app on device?
Solution 1:
You may keep it in KeyChain
-(NSString *)getUniqueDeviceIdentifierAsString
{
NSString *appName=[[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString*)kCFBundleNameKey];
NSString *strApplicationUUID = [SSKeychain passwordForService:appName account:@"incoding"];
if (strApplicationUUID == nil)
{
strApplicationUUID = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
[SSKeychain setPassword:strApplicationUUID forService:appName account:@"incoding"];
}
return strApplicationUUID;
}
Solution 2:
Generally, don't use identifierForVendor
. Instead, use NSUUID
to generate a custom UUID and store that in the keychain (because the keychain isn't deleted if the app is deleted and reinstalled).