При использовании iOS CallKit я могу установить собственную мелодию звонка при настройке экземпляра CXProviderDelegate.
Экземпляр CXProviderDelegate содержит экземпляр CXProvider. Конструктор CXProvider принимает экземпляр CXPrividerConfiguration в качестве параметра. Код выглядит примерно так:
public class CallController : CXProviderDelegate
{
CXCallController cxCallController;
public CallController()
{
cxCallController = new CXCallController();
configuration = new CXProviderConfiguration("App Name Here...")
{
RingtoneSound = "ring.wav", // ring.wav file goes in iOS Resources
};
Provider = new CXProvider(configuration);
Provider.SetDelegate(this, null);
}
}
Этот код вызывается при первоначальном запуске приложения. У меня вопрос: можно ли настроить RingtoneSound с помощью CallKit на основе PER CALL?
Что я хочу сделать, так это узнать, что есть входящий вызов, и ВОЗ звонит, затем отрегулируйтерингтон соответственно. Это не будет сделано при настройке экземпляра CXProviderDelegate. Это для звонков с использованием библиотеки SIP, а не для телефонных звонков. Я попытался сохранить ссылку на класс конфигурации и изменить мелодию звонка для каждого вызова, но это не работает.
Я не могу полагаться на контакты для указания мелодий звонка. Есть ли способ установить мелодии для каждого звонка и если да, то как?