闹钟 iphone sdk

Posted

技术标签:

【中文标题】闹钟 iphone sdk【英文标题】:alarm iphone sdk 【发布时间】:2012-02-13 12:00:30 【问题描述】:

我正在尝试在我的应用中发出警报。我做了 UILocalNotification ,它工作正常。但我需要设置一首 mp3 歌曲作为通知的声音,但它不起作用

这是一些代码

    NSString *filePath = [DOCUMENTS stringByAppendingPathComponent:@"personal.mp3"];
    //NSLog(@"%@",filePath);

    UILocalNotification *localNotif = [[UILocalNotification alloc]init];
    localNotif.fireDate = alarmPicker.date;
    localNotif.timeZone = [NSTimeZone localTimeZone];
    localNotif.alertBody = @"Alarm";
    localNotif.alertAction = @"View";
    localNotif.soundName = filePath;
    localNotif.applicationIconBadgeNumber = 1;
    //localNotif.repeatInterval = NSYearCalendarUnit;

    [[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
    [localNotif release];

我应该添加框架还是应该做什么?现在它不播放我的 mp3。谢谢

【问题讨论】:

您可以在您的应用中播放 mp3 吗? (== mp3 本身有效吗?) @Tomen 是的。在另一个控制器中,我可以很好地播放 mp3 文件 .mp3 歌曲的时长是否少于 30 秒?因为 30 秒是 UIlocalNotification 支持的最大声音持续时间 @Krrish 时长为 2 分钟。是否可以通过编程方式进行剪切? @Dmitriy 请看我的回答。我刚刚用谷歌搜索了你的问题 【参考方案1】:

UILocation 通知不支持 .mp3 这些是支持的文件

因为自定义警报声音是由 ios 系统声音播放的 设施,它们必须采用以下音频数据格式之一:

线性 PCM MA4 (IMA/ADPCM) µLaw aLaw 您可以将音频数据打包在 aiff、wav 或 caf 文件。然后,在 Xcode 中,将声音文件添加到您的 项目作为应用程序包的非本地化资源。

请看这个问题的答案link

另见Preparing Custom Alert Sounds

编辑:添加持续时间的答案

您可以检查声音以确定其数据格式,方法是在 QuickTime Player 并从电影中选择 Show Movie Inspector 菜单。

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

您可以使用音频编辑器/转换器来修剪您的歌曲

Switch WavePad Audacity

【讨论】:

谢谢。这是一种在 iphone 中以编程方式将 mp3 转换为 wav 的方法吗? 检查这个链接,这可能对你有帮助***.com/questions/1478030/iphone-convert-mp3-to-wav 我认为持续时间是问题,因为只要 soundName 属性小于 30 秒,mp3 文件就可以为我工作 是的,我也有类似的经历。如果 mp3 文件时长小于 30 则可以使用

以上是关于闹钟 iphone sdk的主要内容,如果未能解决你的问题,请参考以下文章

iPhone闹钟渐进式音乐提醒+音量控制

如何以编程方式设置 iPhone 闹钟?

如何使用代码在 iphone 中打开本机闹钟?

如何在iphone中设置选定日期的闹钟?

闹钟 iphone sdk

通过声音将设备从睡眠中唤醒的 iPhone 闹钟