I want to save data for unique users into a database i have running on google app engine but i am struggling to figure out what to use as an unique identifier without asking the user for a username.
While being able to to use the udid of the ipad/iphone would help it doesn’t feel like the right solution…
Anyone have any ideas?
Also can we pull the udid?
What other unique identifiers do we have to work with?
I usually create a GUID using the current time stamp. So you end up with a datapair that’s stored as something like “Bob” for the key and “123456789” for the value. Then use that value as the key to records.
.@HaroBlack the UDID is no longer allowed. Apple has provided two alternative identifiers — we could potentially look at exposing these in Codea if it would be helpful to you. Here is how they work:
identifierForVendor and advertisingIdentifier
identifierForVendor is a device identifier that remains the same for all apps by the same vendor (that is, they have com.vendor.* in their bundle identifier). This gets backed up and restored during device backups. However, if a user deletes all applications by a particular vendor, and then reinstalls one, a new identifierForVendor is generated.
advertisingIdentifier is a unique identifier for a device that is stable across all vendors (similar to UDID). The advertising identifier changes if the device is reset. It is only to be used for serving advertisements.
However, since all you want is unique identifiers for users, you could probably have your client query the server for a new unique identifier when a user first attempts to log in. Then you could store that identifier on the device (in global or local data). This would persist until the user deletes your app.
This would be useful to expose in the future - at this point I’m starting to toy with the runtime to do stuff ‘better’ than than Codea does out of the box. The identifiers are a good example of why to do it.
I’d suggest exposing those so we don’t need to write an article on how to get variables between Codea runtime vs. Codea Dev…