Сбой VCF в imessage из-за настроенного имени службы CNSocialProfile?

Я создал vcf программно, используя swift . В этом vcf я создал объект [CNLabeledValue<CNSocialProfile>], к которому я добавил CNSocialProfile с именем пользовательской службы, в моем случае это "Instagram".

Но как только я поделюсь этим vcf с помощью iMessage, все устройства, работающие на iOS 13 выше, вылетают при нажатии на vcf, но все устройства до iOS 13 работали нормально. Есть ли способ избежать этого на время?

Эта проблема, являющаяся пользовательским именем службы в CNSocialProfile, возникает путем ручного тестирования того же самого и индивидуального удаления одного элемента за раз, поскольку невозможно отлаживать приложение iMessage (я думаю).

Это код, который вызвал проблему:

if contact.instagram != ""
{
    socialProfiles.append(
        CNLabeledValue(
            label: "Instagram", 
            value: CNSocialProfile(
                urlString: contact.instagram, 
                username: contact.instagram, 
                userIdentifier: self.givenName, 
                service: CNSocialProfile.localizedString(
                    forService:"Instagram"
                )
            )
        )
    )
}

Я хочу отображать пользовательские ссылки на социальные сети, такие как Instagram и Snapchat, без сбоя vcf, отправленного через iMessage, поскольку это необходимо для работы приложения. Есть ли способ сделать это возможным?


person ashin asok    schedule 30.10.2019    source источник


Ответы (1)


В настоящее время, начиная с iOS 13.2.3, эта ошибка исчезает в приложении iMessage. Причиной этого является неподдерживаемая пользовательская метка для CNSocialProfile .

Существует обходной путь для того же самого. Вы можете настроить метку в массиве urladdress из CNMutableContact .

Также день рождения также не сохраняется в контактах после iOS 13. Надеюсь, Apple скоро это исправит.

person ashin asok    schedule 27.11.2019