Есть ли способ заблокировать No Caller ID с расширением каталога вызовов в iOS?
Я работаю над пользовательским приложением для набора номера телефона для iOS. Моя идея состоит в том, чтобы создать хороший опыт, имея возможность заблокировать телефонный звонок без идентификатора вызывающего абонента с помощью Call Directory Extension. В настоящее время на iOS нет способа заблокировать неизвестного абонента, кроме как включить режим "Не уничтожать".
Есть ли способ каким-либо программным способом идентифицировать и заблокировать вызывающего абонента, у которого нет идентификатора телефонного номера, или заблокировать ярлык с надписью No Caller ID?
До сих пор я пробовал это в CallDirectoryHandler
private func addAllBlockingPhoneNumbers(to context: CXCallDirectoryExtensionContext) {
/**
Retrieve all phone numbers to block 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 unknownCaller = CXCallDirectoryPhoneNumber()
let unknownCaller1: CXCallDirectoryPhoneNumber = 0
let unknownCaller2: CXCallDirectoryPhoneNumber = 00000000
let caller381X: CXCallDirectoryPhoneNumber = 38161XXXXXXX
context.addBlockingEntry(withNextSequentialPhoneNumber: unknownCaller)
context.addBlockingEntry(withNextSequentialPhoneNumber: unknownCaller1)
context.addBlockingEntry(withNextSequentialPhoneNumber: unknownCaller2)
context.addBlockingEntry(withNextSequentialPhoneNumber: caller38161X)
}
И до сих пор я был в состоянии заблокировать этот обычный номер телефона 38161XXXXXXX, но, если тот же самый номер звонит, прячась с префиксом #31#, вызов пройдет.
Кто-нибудь знает, возможно ли это, и есть ли способ идентифицировать и заблокировать No Caller ID?
1 ответ
Нет, добавочный номер блокировки вызова CallKit должен указывать количество номеров, которые должны быть заблокированы. Вы не можете указать "нет номера", который будет заблокирован.