[英]Audio doesn't sound in a few iOS devices
我開發了一個應用程序,播放帶有一些聲音錄音的音頻文件。 當我調試它時,我沒有任何問題,當我從AppStore下載它完美的工作,我的朋友使用它,他們沒有任何問題的應用程序,但來自世界各地的一些人已經聯系我告訴我應用程序沒有聲音。
這很奇怪,因為他們告訴我鈴聲(mp3 44100Hz,單聲道,128kbps)首先發出聲音但聲音(mp3 44100Hz,立體聲,96kbps)不響。 與我聯系的人有不同的設備型號和不同版本的iOS 6。
我使用AVAudioPlayer播放文件,我認為它運作良好。
你有同樣的問題嗎?
謝謝
UPDATE
這是我擁有的Localizable.strings
我像這樣加載文件:
//
NSString *fileLang = NSLocalizedString(aItem.fileName, nil);
//more code ...
thePlayerURL = [[NSBundle mainBundle] URLForResource:fileLang withExtension:@"mp3"];
//more code ...
AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL: aItem.urlAudio error:&error];
player.delegate = self;
[player prepareToPlay];
這是帶有文件鍵和值的Localizable.strings的示例,默認情況下,鍵的名稱是文件的西班牙語版本:
//AUDIO NAMES
"1_au_es" = "1_au_en";
"2_au_es" = "2_au_en";
"3_au_es" = "3_au_en";
"4_au_es" = "4_au_en";
"5_au_es" = "5_au_en";
"6_au_es" = "6_au_en";
"7_au_es" = "7_au_en";
"8_au_es" = "8_au_en";
"9_au_es" = "9_au_en";
"10_au_es" = "10_au_en";
"11_au_es" = "11_au_en";
"12_au_es" = "12_au_en";
"13_au_es" = "13_au_en";
"14_au_es" = "14_au_en";
"15_au_es" = "15_au_en";
"16_au_es" = "16_au_en";
"17_au_es" = "17_au_en";
"18_au_es" = "18_au_en";
"19_au_es" = "19_au_en";
你確定他們的振動按鈕沒有打開嗎? 我寫了一個翻譯應用程序,讓用戶只需將振動按鈕打開靜音。 這看起來很簡單,但我已經收到了近15封電子郵件,稱應用程序沒有音頻。
這似乎很簡單,但該解決方案是最簡單,最快捷的解決方案。 振動模式,關閉所有音頻,甚至是應用程序。
我的翻譯應用程序使用AVAudioPlayer,並沒有任何編程錯誤。 只是用戶錯誤。
也許音頻比特率可能是問題? 我真的不知道......
鈴聲比運行良好有128kbps,音頻文件有96kbps,有時不起作用。 奇怪的是,音頻在90%的用途中運行良好但有時會失敗。 鈴聲相反,100%的效果很好。
:/
如果不檢查Xcode項目配置,很難找到這個問題的精確解決方案。 但是,根據您在評論中提到的信息,我懷疑問題必須與Localization字符串相關。 檢查您的本地化配置,檢查您是否正確使用本地化字符串文件,檢查是否為每個支持的本地化寫了有效的文件名。
另外,檢查您的代碼:
NSString *fileLang = NSLocalizedString(aItem.fileName, nil);
//more code ...
thePlayerURL = [[NSBundle mainBundle] URLForResource:fileLang withExtension:@"mp3"];
//more code ...
AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL: aItem.urlAudio error:&error];
player.delegate = self;
[player prepareToPlay];
為什么你不使用“thePlayerURL”? 也許這就是問題,因為是“本地化的URL”。 我希望:
NSString *fileLang = NSLocalizedString(aItem.fileName, nil);
//more code ...
thePlayerURL = [[NSBundle mainBundle] URLForResource:fileLang withExtension:@"mp3"];
//more code ...
AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:thePlayerURL error:&error];
player.delegate = self;
[player prepareToPlay];
我最近提交了一個具有相同問題的應用程序,但由於我沒有在Xcode和應用程序信息下的“證書”窗格中設置“Inter-App Audio”,因此它被拒絕了。 這可能有所幫助。
如果您想知道,該應用程序違反了App Store指南的第2.13節 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.