2011-12-16 46 views
2

有誰知道是否可以使用Sencha Touch在本地設備上從互聯網上保存媒體?從我目前看到的內容來看,我知道在設備上本地保存XML或JSON數據是絕對有可能的,但我沒有找到在本地存儲媒體的方法。Sencha觸摸並保存本地媒體

更具體地說,我正在尋找一個應用程序,爲用戶提供一系列音頻研討會,比如播客。用戶將能夠直接從互聯網流式傳輸這些音頻文件,但我還需要爲用戶提供稍後保存劇集/研討會的能力。這對於用戶旅行時並且沒有可靠的互聯網連接或數據計劃很重要。

主要交付設備將在iOS(iPhone,iPad,iPod Touch)上,我希望能夠在Android設備上使用相同的技術 - 但這將是次要階段。

如果這是可能的,我將如何去節約材料?如果有的話,會有什麼限制呢?任何想法都將不勝感激。

回答

3

我用Sencha Touch 1和PhoneGap做了一些類似的東西來製作混合應用程序。

基本上,我使用Sencha Touch來下載JSON等和LocalStorage來存放數據。 Sencha Touch不支持將媒體/文件/等下載到實際設備,因爲框架無法訪問文件系統。

然後,我使用PhoneGap的API接入設備的本機文件系統,並將文件下載到應用程序的Documents目錄,並將文件名/路徑傳遞給Sencha Touch以供在應用程序中使用。

我假設你正在尋找基於你的問題創建一個混合應用程序,但如果這是一個嚴格的網絡應用程序,那麼你可以做的並不多。

爲了增加上述要點,您可能需要base64對文件進行編碼並將其存儲在LocalStorage中,但這不是可持續模式,因爲LocalStorage僅爲您提供5mb的空間。如果超過5MB,則會提示用戶(是,否)以允許LocalStorage使用更多空間(以5mb爲增量)。由於您參考的文件有可能達到5mb,因此您可以看到這對您和用戶來說很快就會變得難以管理。

編輯: 爲本地包裝 http://blog.clearlyinnovative.com/post/2056122828/phonegap-plugin-for-downloading-url-all-the-code爲PhoneGap的下載代碼

+0

非常感謝。這給了我很多希望,特別是因爲已經有代碼幫助我開始。我對開發混合應用程序的想法持開放態度,這就是爲什麼將同一應用程序移植到其他設備是次要目標。 – ar170na 2011-12-16 20:18:05