如果應用程序需要數百個音頻文件(它們很小,5-25KB),將它們放在資產目錄或文檔目錄中會更好嗎?我已經嘗試了這兩種方法,但它們看起來並沒有太大差別,無論是哪種方式管理項目導航器中的數百個文件都很麻煩,而且它們都是相同的應用程序文件大小。將iOS應用程序音頻文件應用程序存儲在xcassets或文檔目錄中?
回答
到目前爲止,我發現一件事影響了是否將音頻文件放在應用程序包中,或將其放入應用程序包的資產目錄部分。
將音頻文件放入資產目錄中時,它可用作數據,但沒有URL。據我現在瞭解,如果你想要一個URL,你必須提取數據並創建一個文件,這是雙重工作。
如果您只有在將音頻文件放入應用程序包中時可以自動獲取URL,它會爲您提供更多選項。就像在AVPlayerItem中使用AVQueuePlayer一樣。 AVPlayerItem只需要一個URL,而不是數據。如果您想要從資產目錄中一個接一個地播放音頻文件,那麼需要更多的工作,您必須爲AVAudioPlayerDelegate編寫代碼,而使用AVQueuePlayer時,您只需提供一個AVPlayerItems數組。
我懷疑可能有更多的優點有一個可以參考的URL並且沒有看到資產目錄的優勢,所以我的觀點可能會有所變化。
由於您希望將音頻文件與應用程序捆綁在一起,因此無法使用「文檔」文件夾。 Documents文件夾的使用是一個運行時功能,只能在您的應用程序從App Store安裝並由用戶運行後才能使用。
要將這些文件包含在您的應用程序中以便它們立即存在,它們必須是應用程序資源包的一部分。無論是使用資產目錄還是簡單地將它們存儲在軟件包中,都取決於您,但無法將它們打包到Documents文件夾中,因爲在用戶首次運行該應用程序之前沒有Documents文件夾。
我的錯誤,出於某種原因,當我將音頻文件複製到項目導航器中時,我認爲它創建了文檔目錄中的文件。它是捆綁的一部分。那麼在捆綁和目錄中是否有區別? – Steve
- 1. 將文件保存在iOS應用程序目錄
- 2. 使用音頻文件或文本語音爲iOS應用程序
- 3. 如何在iOS應用程序中導出音頻文件?
- 4. 下載mp3文件並存儲在應用程序目錄中
- 5. 如何將文件夾添加到iOS應用程序文檔目錄中?
- 6. iOS:應用程序聲音中使用的音頻文件比在應用程序外播放時要嚴格
- 7. 我可以在iOS的應用程序文檔目錄中寫入文件嗎?
- 8. 在iOS應用程序中的應用程序存儲大小
- 9. 從應用程序保存應用程序目錄中的文件
- 10. iOS將圖像保存到文檔目錄放慢應用程序
- 11. 在iOs應用程序中存儲html文件的位置?
- 12. 使用AIR應用程序安裝程序嚮應用程序存儲目錄添加新文件
- 13. iOS - iPhone應用程序文檔「沒有這樣的目錄」?
- 14. iOS應用程序文檔目錄被丟棄
- 15. 寫入應用程序文檔目錄中的目錄錯誤
- 16. iOS:可以在應用程序文檔目錄中存儲RSA私鑰(用於解密文本)嗎?
- 17. 使用庫目錄中的文件發佈IOS應用程序
- 18. 如何將文件放在我的應用程序的文檔目錄中?
- 19. 我應該使用哪種音頻文件用於iOS應用程序?
- 20. iOS音頻在音頻播放完成後將音頻文件流保存到文檔目錄中
- 21. ios將音頻和視頻url保存到文檔目錄
- 22. iPhone應用程序存檔 - 沒有這樣的文件或目錄
- 23. 將文件存儲在asp.net中的Web應用程序中
- 24. 在iOS應用程序中使用本地視頻文件(xcode)
- 25. iPad應用程序文檔文件夾
- 26. 如何在應用程序背景中播放音頻文件?
- 27. 在iPhone/iPad應用程序中播放音頻文件?
- 28. 如何在應用程序中放置資源文檔目錄
- 29. 在應用程序文檔目錄中刪除圖像
- 30. iOS應用程序分發 - 存檔.ipa文件
您希望將這些文件與您的應用程序一起使用,以便在用戶首次安裝應用程序時使用這些文件?或者當用戶第一次運行你的應用時,你的應用下載的這些文件是? – rmaddy
你確定你是指文件目錄嗎?這是一個讀/寫目錄,它是在第一次啓動應用程序時創建的,爲空。資產目錄是隻讀的,它的內容存儲在應用程序包中。如果這些聲音文件隨應用程序一起提供,那麼您必須將它們從軟件包中複製到文檔目錄中,如果這是您想要保留它們的地方。 –
@rmaddy,這些文件包含在應用程序中。 – Steve