我已使用以下代码在我的应用中成功安排了本地通知:
Class cls = NSClassFromString(@"UILocalNotification");
if (cls != nil) {
UILocalNotification *notification = [[cls alloc] init];
notification.fireDate = self.alarmNotificationDate;
notification.timeZone = [NSTimeZone defaultTimeZone];
notification.alertBody = @"Alarm is due";
notification.alertAction = @"Show Alarm";
notification.soundName = @"alarm.mp3";
[[UIApplication sharedApplication] scheduleLocalNotification:notification];
[notification release];
其中self.alarmNotificationDate是另一种方法中的NSDate赋值。
在模拟器中一切正常,但是当我在运行iOS4的可信赖的旧iPhone 3G上测试时,我收到通知,但只有默认声音。
我尝试过不同的声音文件但没有成功。
任何线索为什么它可能是这样以及如何纠正它?
由于
答案 0 :(得分:6)
UILocalNotification不支持mp3。它仅支持参考页面上提到的格式和容器。
因为播放了自定义提醒声音 通过iOS系统声音设施,他们 必须是以下音频之一 数据格式:
Linear PCM MA4 (IMA/ADPCM) µLaw aLaw
您可以将音频数据打包成 aiff,wav或caf文件。
答案 1 :(得分:3)
可能有几个原因:
答案 2 :(得分:0)
您是否在文件名和文件名中使用相同的大写/小写编码拼写声音名称?