Я запутался в 2 uuid, сгенерированном с использованием двух разных классов (CFUUID и NSUUID). Они оба одинаковы?В чем разница между UUID, сгенерированным с использованием CFUUID и класса NSUUID?
ответ
Согласно документации класса для UUID, они действительно разные классы (т.е. они не бесплатных мостиков):
Примечания: Класс NSUUID не бесплатный мостик с CoreFoundation-х CFUUIDRef. Используйте строку UUID для преобразования между CFUUID и NSUUID, если это необходимо. Два объекта NSUUID не равны , которые могут быть сопоставимы по значению указателя (как CFUUIDRef); use isEqual: сравнить два экземпляра NSUUID.
Моей интерпретации было бы то, что они оба генерируют UUID, который вам нужно будет управлять (хранить и т. Д.). Обе функции, разумеется, генерируют разные UUID каждый раз, когда вы их используете, поэтому вам никогда не придется сравнивать результаты обоих (это точка обеих функций).
Если вам нужно сравнить UUID, то вам лучше это сделать, конвертируя их в строки и используя их как таковые.
Могу ли я использовать CFUUID как уникальный идентификатор во всех iOS версии, начинающиеся с iOS 4.3? Вместо того, чтобы разрисовывать отдельный MAC-адрес или использовать NSUUID, сгенерированный UUID от iOS 6? – Dee
Да, действительно, это то, для чего мои проекты используют CFUUID. –
Вы попробовали? Создание в обоих направлениях? –
Нет. Я просмотрел документацию. – Dee
http://www.macworld.com/article/2031573/apple-sets-may-1-deadline-for-udid-iphone-5-app-changes.html –