2011-12-09 28 views
0

我還在學習iOS編程,所以如果這是一個非常簡單的問題,我很抱歉。我正在使用Urban Airship來管理應用內購買的非消耗性音頻文件。 UA將這些文件存儲在庫目錄中,並且我想在用戶按下按鈕時只播放特定的文件。我一直在玩下面的建議代碼,但似乎無法弄清楚。任何人都可以提供有關如何播放和目錄中的音頻文件的更多細節?如何從城市飛艇的NSLibraryDirectory播放音頻文件?

NSString *productId = @"YOUR PRODUCT ID"; 
NSString *filename = @"YOUR FILE NAME"; 

NSString* libraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) objectAtIndex:0]; 
// build the fill paths by appending ua and downloads to the base libraryPath 
libraryPath = [libraryPath stringByAppendingPathComponent:@"ua"]; 
libraryPath = [libraryPath stringByAppendingPathComponent:@"downloads"]; 
// Append the product id: 
NSString *downloadDirectory = [libraryPath stringByAppendingPathComponent:productId]; 
// now append your filename 
NSString *fullPathToMyFile = self.filePath = [downloadDirectory stringByAppendingPathComponent:filename]; 
  • 注:
  • 的productid我以爲是com.company.application.product
  • 我以爲是文件的名稱一旦被解壓縮
  • 文件名(文件名上傳到UA) - 其餘似乎構建文件的位置,但我得到一個「屬性」文件路徑「找不到」錯誤。我應該在哪裏定義'文件路徑'?
  • 我想的只是一齣戲的方法玩它:

    球員= [[AVAudioPlayer頁頭] initWithContentsOfURL:[NSURL fileURLWithPath:fullPathToMyFile錯誤:零]; [玩家播放];

回答

0

檢查文件的路徑,即使它存在。
你可以看到所有的文件通過時,它做NSLog。

NSLog(@"fullPathToMyFile = %@",fullPathToMyFile); 

如果使用模擬器工作,你可以去當你的文件所在文件夾。