2010-11-15 5 views
8

J'ai été à la recherche d'une solution pendant des heures .. avec absolument aucun chance.UILocalNotification son personnalisé

Je crée une notification locale:

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"; 

Notez le nom du son ...

J'ai essayé de mettre 10 sons (aiff, wav, etc ... cafs), mais la notification apparaît avec le son par défaut:/

J'ai le fichier "fireburn.caf" dans le dossier Ressources.

Pourquoi ne joue-t-il pas mon son ?????

Merci.

Répondre

10

RÉPONSE:

Rien de mal avec le code ..

Il est juste que l'iPhone stupide n'a pas annulé les anciennes notifications que je fait avec le son par défaut - _ -;

Quand je nettoyais le projet, supprimé l'application du téléphone et le téléphone, puis redémarrés il a travaillé ..

quelqu'un Hope trouve cela utile.

+3

Si quelqu'un doit encore être aux prises avec ce problème, je découvre qu'il pourrait être nécessaire faire une chose. Lorsque vous faites glisser-déposer le fichier audio dans votre projet, en plus de cocher "Copier ...", vous devrez peut-être également cocher l'option "Ajouter à la cible". Cela a fait la chose pour moi. Merci pour la réponse de toute façon. –

+0

Génial, mais encore une fois, votre problème a à voir avec tout fichier de ressources que vous ajoutez (images, sons, polices, etc.);) – Mazyod

1

nettoyez-vous les anciennes notifications avec

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

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

?

+0

Yup .. J'étais. N'a pas fonctionné. – Mazyod

0

Essayez ceci:

notif.soundName = [strSoundFileName copy]; 
+1

Il avait déjà trouvé la solution au problème! – Hemang

Questions connexes