xcode - 如何在 Xcode 中正确创建可在 iOS 邮件中听到的音频文件

标签 xcode ios5 avaudioplayer avaudiorecorder

我有一个具有录制和播放功能的应用程序。这些工作正常。我还可以通过电子邮件发送音频文件。

如果我在计算机上阅读电子邮件,我可以播放音频文件。

我可以在 iDevice 上阅读电子邮件,但如果我尝试播放音频文件,我会看到类似 QT 的内容弹出一会儿,但随后该消息又返回到屏幕上。

如果我按住音频文件图标,我会看到可以使用的应用程序列表 - 但它们都是文档应用程序,而不是音频应用程序。

声音文件具有 .caf 后缀(核心音频格式)。

我的音频文件是这样创建的:

NSMutableDictionary* recordSettings = [[NSMutableDictionary alloc] init];

[recordSettings setValue :[NSNumber numberWithInt:kAudioFormatAppleIMA4]     forKey:AVFormatIDKey];
[recordSettings setValue :[NSNumber numberWithInt:16]                           forKey:AVEncoderBitRateKey];
[recordSettings setValue :[NSNumber numberWithFloat:44100.0]                    forKey:AVSampleRateKey]; 
[recordSettings setValue :[NSNumber numberWithInt: 2]                              forKey:AVNumberOfChannelsKey];

NSError *error = nil;
audioRecorder = [[AVAudioRecorder alloc]

initWithURL:soundFileURL settings:recordSettings error:&error];

if (error)
{
NSLog(@"error: %@", [error localizedDescription]);
} else {
// ALL IS OK, START RECORDING
//NSLog(@"DetailVC - recordAudio -  soundFilePath is %@", soundFile);
[audioRecorder prepareToRecord];
recordToggle = 1;

[autoCog startAnimating];
[audioRecorder record];     

recordingTimer = [NSTimer scheduledTimerWithTimeInterval:1.0
                                                         target:self
                                                       selector:@selector(recordingOn)
                                                       userInfo:nil
                                                        repeats:YES];

}

感谢您的建议。

最佳答案

问题可能不在于音频创建,而在于如何将其附加到电子邮件中。您是否正确设置 MIME 类型以便邮件客户端知道如何读取数据?对于 .caf,您应该使用 audio/x-caf MIME 类型。

关于xcode - 如何在 Xcode 中正确创建可在 iOS 邮件中听到的音频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9420291/

相关文章:

iphone - AVAudioPlayer 错误加载文件

Xcode 和核心数据 - 'Create NSManagedObject Subclass'

ios - 有谁能帮我向应用商店提交申请吗?

objective-c - ABPeoplePickerNavigationController 自动关闭而不显示地址簿

ios - 在两个 subview Controller 之间来回传递数据

iOS 13.1 AVAudio 播放器崩溃

iphone - 在 xcode 中保存/共享字符串

ios - Cocoapod 的 'pod install' 使用 Prefix Header 会产生奇怪的行为

ios - 代码覆盖率不包括 UITests 覆盖的代码

ios - 音频播放器 iOS 和 m4a