UILocalNotification自定义声音

时间:2010-11-15 21:11:39

标签: iphone ios4 nsbundle audio 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 ...等),但通知只是弹出默认声音:/

我在Resources文件夹中有“fireburn.caf”文件。

为什么不播放我的声音?????

感谢。

3 个答案:

答案 0 :(得分:10)

解答:

代码没有问题..

只是愚蠢的iPhone没有取消我用默认声音制作的旧通知 - _ - ;

当我清理项目时,从手机中删除了应用程序并重新启动了手机,然后它才有效..

希望有人觉得这很有帮助。

答案 1 :(得分:1)

您是否使用

清除旧通知
UIApplication* app = [UIApplication sharedApplication];
NSArray*  oldNotifications = [app scheduledLocalNotifications];

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

答案 2 :(得分:0)

试试这个:

notif.soundName = [strSoundFileName copy];