В некоторых случаях это невозможно (исправить третьи стороны) из-за аппаратных правил ограничения. Например, хранение данных vCard в записях NDEF, написанных на NFC-теге. Слишком дорого заполнять каждое поле подстрокой CHARSET = UTF-8.

я есть строка V-Card с именемAndré и я инициализируюCNContact с V-картой.

BEGIN:VCARD

VERSION:2.1

N:Foo;André;;;

FN:André Foo

TEL;CELL:00023 4474848

END:VCARD

Я инициализирую контакт с необработанной строкой так:

if let data = string.data(using: .utf8) {
    do {
        let contacts = try CNContactVCardSerialization.contacts(with: data)
        let contact = contacts.first
        return contact

    } catch {
        print("Data is not a VCard")
    }
}

Но когда я распечатаю сырую строкуcontact.givenName Я получил:

André

Как я могу получить правильную строку фреймворка Contacts в iOS?

Ответы на вопрос(1)

Ваш ответ на вопрос