Swift에서 iOS에 UUID 생성
iOS Swift 앱에서 테이블 키로 사용할 랜덤 UUID(GUID) 문자열을 생성하려고 하는데, 이 스니펫이 작동하는 것 같습니다.
let uuid = CFUUIDCreateString(nil, CFUUIDCreate(nil))
이것은 안전합니까?
아니면 더 나은(권장되는) 접근법이 있을까요?
이것을 사용해 보세요.
let uuid = NSUUID().uuidString
print(uuid)
스위프트 3/4/5
let uuid = UUID().uuidString
print(uuid)
NSUUID API를 사용할 수도 있습니다.
let uuid = NSUUID()
문자열 값을 다시 가져오려면uuid.UUIDString
.
주의:NSUUID
는 iOS 6 이상부터 이용 가능합니다.
Swift 4의 경우
let uuid = NSUUID().uuidString.lowercased()
Swift 3의 경우,Foundation
유형에서 'NS' 접두사가 삭제되었으므로 다음 방법으로 액세스할 수 있습니다.UUID().uuidString
.
너도can
그것을 사용하다lowercase
밑에
let uuid = NSUUID().UUIDString.lowercaseString
print(uuid)
산출량
68b696d7-320b-http2-a412-d9cee10fc6a3
감사해요!
매번 동일한 내용이 생성됩니다.
if let uuid = UIDevice.current.identifierForVendor?.uuidString {
print(uuid)
}
새 파일이 생성될 때마다 다음을 수행합니다.
let uuid = UUID().uuidString
print(uuid)
UUID는 단순한 구조이며, 이 구조에는uuidString
.uuidString
- UUID에서 작성된 문자열(예: "E621E1F8-C36C-495A-93)을 반환합니다.FC-0C247A3E6E5F" 입니다.
UUID는 일의임을 보증합니다.
스위프트 코드:
let identifier = UUID().uuidString
Swift.print(identifier) // Result: "6A967474-8672-4ABC-A57B-52EA809C5E6D"
UUID에 관한 Apple 공식 문서.
기사 전문 https://tonidevblog.com/posts/how-to-generate-a-random-unique-identifier-with-uuid/
macOS 13 및 Swift 5.7에서는 Foundation의 UUID() 메서드는 실제로 대문자 UUID를 반환하며, Vapor Fluent는 이를 그대로 사용하는 적어도 하나의 프레임워크입니다.따라서 id=syslog로 새 레코드를 생성하면 Fluent가 새 대문자 UUID를 얻고 새 레코드와 함께 저장합니다.반면 MySQL은 소문자 UUID를 생성하고 MySQL에서 레코드를 작성하면 소문자 UUID를 저장합니다.MySQL과 SQLite 모두 대소문자를 Different로 처리합니다. 경고 비우기.
하지만... 이전 데이터 읽기 UUID를 사용하는 경우 UUID가 대문자 또는 소문자로 저장되었는지 여부는 중요하지 않습니다.열쇠 케이스를 바꾸지 않도록 확인만 하면 됩니다.
언급URL : https://stackoverflow.com/questions/24428250/generate-a-uuid-on-ios-from-swift
'source' 카테고리의 다른 글
프로세스 ID를 취득하여 nohup 프로세스를 종료하려면 어떻게 해야 합니까? (0) | 2023.04.14 |
---|---|
Grep RegEx로부터의 그룹 캡처 (0) | 2023.04.09 |
SQL Server가 서명되지 않은 데이터 유형을 지원하지 않는 이유는 무엇입니까? (0) | 2023.04.09 |
SQL 함수를 기본 매개 변수 값으로 지정하시겠습니까? (0) | 2023.04.09 |
stderr에 출력하는 에코 (0) | 2023.04.09 |