我正在研究iOS目标c中的Alarm base项目。
当应用程序处于后台时,我已经实现UILocalnotification
警报。
但我面临的问题是声音仅播放30秒。
如何增加声音的时间间隔,或者是否有其他方式来实现声音,而不是UILocalnotification
。
- (IBAction)Alert:(id)sender{
NSDateFormatter *format = [[NSDateFormatter alloc] init];
[format setDateFormat:@"yyyy-MM-dd"];
//NSDate *date = [NSDate date];
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
localNotif.fireDate =[NSDate dateWithTimeIntervalSinceNow:15];
localNotif.timeZone = [NSTimeZone localTimeZone];
localNotif.alertBody = @"Emergency";
localNotif.alertAction = @"View";
localNotif.soundName = @"police.mp3";
localNotif.applicationIconBadgeNumber = 1;
localNotif.repeatInterval = NSYearCalendarUnit;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
}
Note : mp3 file i am using for UILocalnotification is of more that 60min duration.
请指教。 谢谢
答案 0 :(得分:1)
如果设备处于活动模式,通知声音仅播放5秒钟。如果设备处于睡眠模式,通知将播放30秒声音。我想,这是标准的行为
根据Apple指南,您需要使用持续30秒的mp3文件。请查看以下链接。
https://developer.apple.com/reference/usernotifications/unnotificationsound
注意:FYI,UILocalNotification已从iOS10弃用。您需要开始使用UNUserNotificationCenter。