I am looking for stable (and Apple compatible) registration and authentication pattern between iphone device and server. Ideally, registration and authentication will not be associated with the user and will be the background.
So far, I have found 3 primitives to execute these components:
- UDID
- Uuid
- SBFormattedPhoneNumber
UDID Method
[[UIDevice currentDevice] uniqueIdentifier]
where @property (nonatomic, readonly, retain) NSString *uniqueIdentifier
uniqueIdentifier is a string unique to each device based on various hardware details. (Only for reading)
A unique device identifier is a hash value that consists of various hardware identifiers, such as the serial number of a device. It is guaranteed to be unique for each device, but cannot be publicly linked to a user account. You can use it, for example, to store high scores for a game on a central server or to control access to registered products. A unique device identifier is sometimes referred to as its abbreviation UDID. We can get UDIDs from iTunes manually for verification.
I don’t know what it means "cannot be publicly linked to a user account."
UUID Method
NSString *uuid = nil;
CFUUID theUUID = CFUUIDCreate(kCFAllocatorDefault);
if (theUUID) {
uuid = NSMakeCollectable(CFUUIDCreateString(kCFAllocatorDefault, theUUID);
CFRelease(theUUID);
}
CFUUIDCreate (UUID). UUID CFUUIDCreate. , NSUserDefaults. , , , UUID, .
SBFormattedPhoneNumber
NSString *num = [[NSUserDefaults standardUserDefaults] stringForKey:@"SBFormattedPhoneNumber"];
NSLog(@"Phone Number: %@", num);
, , - , iTunes . iPhone iTunes , , [ ], iPhone OK, iTunes , iPhone , .
" iPhone OS ( ) . , " ". - , , , , .."
. iTunes Connect, App Store.
.