Come ottenere un ID dispositivo univoco in Swift?


Answers

Per Swift 3.X Ultimo codice di lavoro, Facilmente utilizzabile;

   let deviceID = UIDevice.current.identifierForVendor!.uuidString
   print(deviceID)
Question

Come posso ottenere un ID univoco per i dispositivi in ​​Swift?

Ho bisogno di un ID da utilizzare nel database e come chiave API per il mio servizio web nella mia app social. Qualcosa per tenere traccia di questo dispositivo uso quotidiano e limitare le sue query al database.

Grazie!




per swift 4.1 lasciare UIDeviceX = UIDevice.current.identifierForVendor! .uuidString print ("UIDeviceX: (UIDeviceX)")




È possibile utilizzare la documentazione Apple di devicecheck (in Swift 4)

func sendEphemeralToken() {
        //check if DCDevice is available (iOS 11)

        //get the **ephemeral** token
        DCDevice.current.generateToken {
        (data, error) in
        guard let data = data else {
            return
        }

        //send **ephemeral** token to server to 
        let token = data.base64EncodedString()
        //Alamofire.request("https://myServer/deviceToken" ...
    }
}

Uso tipico:

In genere, si utilizzano le API DeviceCheck per garantire che un nuovo utente non abbia già utilizzato un'offerta con un nome utente diverso sullo stesso dispositivo.

I bisogni dell'azione del server:

Vedi WWDC 2017 - Sessione 702

altro dall'articolo di Santosh Botre - Identificatore univoco per i dispositivi iOS

Il server associato combina questo token con una chiave di autenticazione ricevuta da Apple e utilizza il risultato per richiedere l'accesso ai bit per dispositivo.




Links