цель c отключить UILocalNotification, когда пользователь делает телефонный звонок

У меня есть приложение, зарегистрированное для UILocalNotification, и звук уведомления имеет продолжительность 30 секунд, когда пользователь делает телефонный звонок и fireDate из UILocalNotification одновременно со звонком, звук уведомления воспроизводится в гарнитуре и пользователь не может слышать свой голосовой вызов

мне интересно, есть ли способ отключить звук UILocalNotification, если есть текущий телефонный звонок

Заранее спасибо.


person Mutawe    schedule 02.06.2013    source источник


Ответы (1)


Используйте CTCallCenter (базовая платформа телефонии) для регистрации обработчика событий, чтобы ваше приложение получало уведомление о начале вызова.

Используйте класс CTCallCenter, чтобы получить список текущих вызовов сотовой связи и реагировать на изменения состояния для вызовов, например из состояния набора номера в состояние подключения. Такие изменения состояния известны как события сотового вызова.

Что-то вроде:

CTCallCenter *callCenter = [[CTCallCenter alloc] init];

...

...

callCenter.callEventHandler=^(CTCall* call)
{    
  if (call.callState == CTCallStateConnected) 
  {
    NSLog(@"Call has just been connected");
  }    
}
person Segev    schedule 02.06.2013
comment
и как это сделать?? до срабатывания локального уведомления, во время или после, опишите подробнее, пожалуйста - person Mutawe; 02.06.2013
comment
Вы должны сделать некоторые исследования в этом классе. я отредактировал свой ответ - person Segev; 02.06.2013