iOS5本地通知自定义声音xcode iOS iPhone Objective-c Xcode

Posted

技术标签:

【中文标题】iOS5本地通知自定义声音xcode iOS iPhone Objective-c Xcode【英文标题】:iOS5 local notification custom sound xcode iOS iPhone objective-c Xcode 【发布时间】:2012-03-14 20:04:52 【问题描述】:

我正在尝试设置自定义本地通知声音,如下所示:

UILocalNotification *notification = [UILocalNotification new];
notification.timeZone = [NSTimeZone systemTimeZone];
notification.fireDate = date;

notification.alertAction = @"123"; 
notification.alertBody = @"123";

//!!!
notification.soundName = @"Glass.aiff";

alarmID=[NSString stringWithFormat:@"%i", arrayAlarms.count];
NSDictionary *infoDict = [NSDictionary dictionaryWithObject:alarmID forKey:@"id"]; 
notification.userInfo = infoDict; 
notification.repeatInterval=NSWeekCalendarUnit;

[[UIApplication sharedApplication] scheduleLocalNotification:notification];

但我只听到默认声音。我正在 ios5 上测试应用程序。非常感谢您提前提供的帮助,对不起我的英语。

【问题讨论】:

【参考方案1】:

自定义通知声音限制在 30 秒以内。如果您的声音比此 iOS 更长,则会播放默认声音。这可能是你的问题吗?

有关更多信息,请参见此处。 https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/IPhoneOSClientImp.html

“自定义声音在播放时必须小于 30 秒。如果自定义声音超过该限制,则会播放默认系统声音。”

【讨论】:

不,问题似乎在于'notification.soundName = @"Glass.aiff";'没有正确地发出声音。看起来声音的名称是不够的。因为 Glass.aiff 的声音,IS 不到 30 秒。看来玩 Glass.aiff 的唯一方法是将其包含在您的应用程序中。这是相当愚蠢的,因为您必须包含 iOS 已经包含在您设备中的文件! (好吧,它不是一个大文件,但仍然......想象一下,如果您希望您的用户能够从所有可用的(iOS)声音中进行选择。您不能!您必须包括所有(14)个!) 此页面可能会有所帮助:iphonedevwiki.net/index.php/AudioServices 也许它实际上并没有在文件系统上调用 Glass,实际上类似于“sms-received2.caf”?一旦你找到你想要的声音文件名,我相信这个答案可能会对你有所帮助:***.com/a/7831768/387317 那个(第二个链接)有效,但仅适用于 3 个(是 3 个)声音。 .caf 声音(第一个链接)无处可寻。所以我们回到了第 1 格(几乎)。【参考方案2】:

检查你的语法,它是错误的。看看这个,

notification.soundName = "Glass.aiff";

【讨论】:

【参考方案3】:

仍然可以使用 UILocalNotificationDefaultSoundName 作为默认的本地通知声音。

【讨论】:

【参考方案4】:

notification.soundName = @"Glass.aiff";

应该可以。确保声音(Glass.aiff)实际上在您的应用程序包中,并且小于 30 秒。我们无法设置不存在于我们应用程序包中的自定义声音,即来自 Document 文件夹等。

【讨论】:

以上是关于iOS5本地通知自定义声音xcode iOS iPhone Objective-c Xcode的主要内容,如果未能解决你的问题,请参考以下文章

FCM 自定义声音通知不适用于 IOS Xcode

来自 URL iOS Swift 的本地通知自定义声音

在objective c ios中增加自定义本地通知声音的时间

iOS 7 本地通知默认没有声音

在本地通知上发送带有自定义声音的触觉

iOS为目录中的本地通知分配声音