2011-01-21 2 views
3

Если UILocalNotification запускается с установленным звуком, и пользователь отбирает «Отмена» в уведомлении, звук останавливается. Но если пользователь набирает «View», iOS затем передает уведомление в приложение, и звук продолжает воспроизводиться. Есть ли способ отменить этот звук из приложения? Отмена уведомления в приложении после доставки уведомления не работает (я этого не ожидал, уведомление уже было отправлено после всех), а так как у меня нет звукового идентификатора системы звука (и я не сделал 't выделить его в первую очередь), я не могу вызвать AudioServicesDisposeSystemSoundID (может я?).Возможно ли остановить воспроизведение звука UILocalNotification при отправке уведомления?

Возможно ли остановить воспроизведение звука UILocalNotification, если пользователь нажал кнопку «Действие» предупреждения уведомления?

ответ

1

Очевидно, проблема существует только на симуляторе (iOS 4.2 sdk), а не на самом устройстве.

+2

Это на самом деле не так. Я только что протестировал устройство ios 6 и ios 7. Звук локального уведомления не прекращается после отмены локального уведомления. – revolutionkpi

+0

Обратите внимание, что мой ответ пришел почти 3 года назад, до ios 6 и 7. Это было верно для устройств и версий iOS, которые у меня были в то время. – Bogatyr

+1

Вероятно, снова появился старый баг - я вижу, что звук прерывается, когда телефон не был заблокирован (уведомление появилось сверху), но звук не прерывается, если устройство заблокировано, и на экране блокировки появляется уведомление – asdf

2

Он не останавливается на устройстве тоже (5.1)

Я пытался исправить это, но я не могу понять это.

я на самом деле получил его остановить на тренажере с помощью этого

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    // Override point for customization after application launch. 
    UILocalNotification *localNotif = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey]; 
    if (localNotif) { 
     [[UIApplication sharedApplication] cancelLocalNotification:localNotif]; 
    }  
    return YES; 
} 

, но он до сих пор не останавливается на устройстве

0

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

- (void)application:(UIApplication *)app 
didReceiveLocalNotification:(UILocalNotification *)notif { 
[[UIApplication sharedApplication]cancelLocalNotification:notif]; 
} 
+1

Не работает для меня IOS 7.1, на iPhone 5 :-( –

+1

Можете ли вы подтвердить, на каком устройстве и с какой конкретной версией это фактически останавливает (замалчивает) звук уведомления? –

0

Я была такая же проблема, когда Перво lly тестирование с iPhone 4.

Проблема появляется, чтобы уйти с iOS 8 и теперь локальные уведомления Звуки останавливаются, когда отменены после перехода в приложение.

iPhone4 [IOS - 7.1.2] - Локальный звук уведомлений держит не играет в App независимо от того, что
iPhone6 ​​[IOS - 8.1.1] - Местное Уведомление звук остановка при аннуляции программно

С что я могу сделать вывод, что появляется затруднительное существует где-то в IOS 8.x
(Увы мне не удалось найти какой-либо документации или примечания к выпуску по данному вопросу.)

Проблемы становится не проблемой для приложений, ориентированных на прошивке 8
(при условии отмены Local Notification приходя в)

Смежные вопросы