Как я могу проверить пропущенный звонок в iPhone с помощью Objective-C? - PullRequest
4 голосов
/ 02 февраля 2010

Как я могу проверить пропущенный звонок в iPhone с помощью Objective-C?

Ответы [ 4 ]

2 голосов
/ 02 февраля 2010

Нет доступа к телефону iPhone из стороннего программного обеспечения. К счастью.

1 голос
/ 10 июля 2010

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

После этого, когда всплывает предупреждение, вызывается applicationWillResignActive .

  1. Если пользователь принимает вызов, вызывается applicationDidEnterBackground , а затем, когда пользователь переключается обратно на ваше приложение, вызывается applicationDidBecomeActive .
  2. Если пользователь отклоняет вызов или вызывающий абонент завершает вызов до принятия / отклонения, будет вызван applicationDidBecomeActive .

Второй случай указывает на пропущенный звонок.

1 голос
/ 02 февраля 2010

Песочница запрещает доступ к функциям телефона из сторонних приложений. Таким образом, нет способа обнаружить пропущенные вызовы.

0 голосов
/ 02 февраля 2010

При поступлении входящего вызова функция

- (void)applicationWillResignActive:(UIApplication *)application;

вызывается, и если вызов пропущен, приложение снова будет активным и функция

- (void)applicationDidBecomeActive:(UIApplication *)application;

называется.

Таким образом, вы можете обнаружить пропущенные вызовы. Нет другого способа сделать это, о котором я знаю.

Единственным недостатком является то, что эти методы также вызываются при блокировке / разблокировке устройства, когда приложение активно, поэтому вы не сможете узнать, был ли это пропущенный вызов или пользователь заблокировал устройство.

...