Пользовательский звук UILocalNotification

Я искал решение в течение нескольких часов... с абсолютно нулевой удачей.

Я настроил локальное уведомление:

UILocalNotification *notif = [[cls alloc] init];

[dateComp setDay:j+1];
[dateComp setHour:[[time objectAtIndex:0] integerValue]+offset];
[dateComp setMinute:[[time objectAtIndex:1] integerValue]];

NSLog(@"Year: %i, Month: %i, Day: %i, Time:%i:%i\n",[dateComp year], [dateComp month], 
                    [dateComp day], [dateComp hour], [dateComp minute]);

notif.fireDate = [gregorian dateFromComponents:dateComp];
notif.timeZone = [NSTimeZone defaultTimeZone];

notif.alertBody = [names objectAtIndex: k];
notif.soundName = @"fireburn.caf";

Обратите внимание на название звука...

Пробовал поставить 10 звуков (aiff, wav, caf... и т.д.), но уведомление просто выскакивает со звуком по умолчанию :/

У меня есть файл "fireburn.caf" в папке "Ресурсы".

Почему не воспроизводится мой звук?????

Спасибо.


person Mazyod    schedule 15.11.2010    source источник


Ответы (3)


ОТВЕЧАТЬ:

Ничего страшного в коде..

Просто дурацкий айфон не отменил старые уведомления, которые я делал со звуком по умолчанию -_-;

Когда я очистил проект, удалил приложение с телефона И ПЕРЕЗАГРУЗИЛ телефон, ТОГДА это сработало.

Надеюсь, кто-то найдет это полезным.

person Mazyod    schedule 16.11.2010
comment
Если кто-то все еще должен бороться с этой проблемой, я обнаружил, что может быть необходимо сделать еще одну вещь. При перетаскивании аудиофайла в ваш проект, помимо отметки «Копировать...», вам может также потребоваться установить флажок «Добавить в цель». Это помогло мне. Спасибо за ответ в любом случае. - person Kasper Munck; 16.06.2012
comment
Круто, но опять же, ваша проблема связана с ЛЮБЫМ файлом ресурсов, который вы добавляете (изображения, звуки, шрифты и т. д.);) - person Mazyod; 17.06.2012

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

UIApplication* app = [UIApplication sharedApplication];
NSArray*  oldNotifications = [app scheduledLocalNotifications];

// Clear out the old notification before scheduling a new one.
[app cancelAllLocalNotifications];

?

person Duck    schedule 02.11.2011

Попробуй это:

notif.soundName = [strSoundFileName copy];
person Kunal Kansara    schedule 03.08.2012