Devo fare riferimento ai record di ABPerson dall'interno di un'applicazione. Io uso il unique ID fornito daIdentifica i record di ABRecord in modo univoco: [ABRecord uniqueId] è immutabile?
- (NSString *)uniqueId
e allegarlo al mio in-app record di contatto.
Inoltre, salvo ABPerson'svCardRepresentation come riserva. Nel caso in cui l'app non sia più in grado di localizzare l'ABRecord utilizzando l'uniqueID, l'app chiede all'utente di recuperare il record di agenda utilizzando la vCardRepresentation salvata. Tutto funziona bene.
Sfortunatamente, un amico mi ha detto che l'ID univoco non è immutabile: durante una sincronizzazione, uniqueId potrebbe improvvisamente cambiare.
Secondo lui, da qualche parte nella documentazione iOS, Apple spiega che non esiste alcun modo per immutable identificare ABPersons utilizzando uniqueId. Nella documentazione Cocoa di OS X, non sono riuscito a trovare un suggerimento.
Su un determinato Mac, può cambiare improvvisamente l'ID univoco? Se è vero, qual è il modo corretto di identificare i record di ABPerson da un'applicazione esterna?
Nel caso in cui l'ID unidirezionale non sia immutabile, posso certamente assegnare una proprietà personalizzata con un GUID. Sfortunatamente, i campi personalizzati non si sincronizzano.
Certamente, preferirei usare uniqueId.
@noa: Grazie per la modifica! – SteAp
Nessuno è in grado di rispondere? – SteAp
Sicuro. È una domanda interessante – paulmelnikow