Расширение каталога вызовов CallKit не распознает номера с более чем 9 цифрами - PullRequest
0 голосов
/ 14 сентября 2018

Я работаю с CallKit и разрабатываю приложение с расширением каталога вызовов. Я следовал этому учебнику , и в настоящее время я тестирую способность идентифицировать номера, которых пользователь не имеет в своих контактах, и показать идентификатор из моего приложения, но хотя он отлично работает с цифрами 1 до 9 цифр, например 123456, когда я устанавливаю номера с 10 или более цифрами, iOs не распознает номер. После полутора дней Google это я не нашел никакой информации об этом. Если кто-нибудь может помочь мне, я буду признателен. Заранее спасибо.

Способ установки телефонных номеров для распознавания:

private func addAllIdentificationPhoneNumbers(to context: CXCallDirectoryExtensionContext) {
        // Retrieve phone numbers to identify and their identification labels from data store. For optimal performance and memory usage when there are many phone numbers,
        // consider only loading a subset of numbers at a given time and using autorelease pool(s) to release objects allocated during each batch of numbers which are loaded.
        //
        // Numbers must be provided in numerically ascending order.

        let allPhoneNumbers: [CXCallDirectoryPhoneNumber] = [ 123456789, 1_888_555_5555 ]
        let labels = [ "ID test", "Local business" ]

        for (phoneNumber, label) in zip(allPhoneNumbers, labels) {
            context.addIdentificationEntry(withNextSequentialPhoneNumber: phoneNumber, label: label)
        }
    }

С этим кодом, когда я симулирую вызов с номером 123456789, iOS показывает тег «Идентификатор теста», и это правильно, но если я добавлю любую цифру, например 0 в конце: 1234567890, iOS не отобразится что-нибудь, когда я симулирую звонок. Я не знаю, что я что-то упустил.

1 Ответ

0 голосов
/ 03 октября 2018

Ну, после нескольких тестов я смог заставить его работать.Дело в том, что телефон должен содержать полный код страны и код города .Так, например, 00_52_55_4567_8932 877 или + 52_55_4567_8932 оба будут работать.Но 55_4567_8932 и 4567_8932 не будут работать.Я надеюсь, что это может помочь кому-то еще в будущем.Спасибо всем!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...