Sencha Touch和保存本地媒体

时间:2011-12-16 17:29:28

标签: iphone ios sencha-touch storage extjs

是否有人知道是否可以使用Sencha Touch在本地设备上保存来自互联网的媒体?从我到目前为止看到的情况来看,我理解在设备上本地保存XML或JSON数据肯定是可能的,但我没有找到在本地存储媒体的方法。

更具体地说,我正在寻找一个应用程序,为用户提供一系列音频研讨会 - 比如播客,真的。用户可以直接从互联网流式传输这些音频文件,但我还需要为用户提供保存剧集/研讨会以供日后使用的功能。这对于用户旅行时并且没有可靠的互联网连接或数据计划非常重要。

主要的传送设备将在iOS(iPhone,iPad,iPod Touch)上,我希望能够在Android设备上使用相同的技术 - 但这将是第二阶段。

如果可以,我该如何保存材料?如果有的话,这样做的限制是什么?对此的任何想法将不胜感激。

2 个答案:

答案 0 :(得分:3)

我使用Sencha Touch 1和PhoneGap做了类似的事情来制作混合应用程序。

基本上,我使用Sencha Touch下载JSON等,并使用LocalStorage来保存数据。 Sencha Touch不支持将媒体/文件/ etc下载到实际设备,因为框架无法访问文件系统。

然后我使用PhoneGap的API来访问设备的本机文件系统,并将文件下载到应用程序的Documents目录,并将文件名/路径传递给Sencha Touch,以便在应用程序中使用。

我假设您正在根据自己的问题创建混合应用,但如果这是一个严格意义上的网络应用,那么您无能为力。

要添加上述内容,您可能可以对文件进行base64编码并将其存储在LocalStorage中,但这不是一个可持续的模型,因为LocalStorage只为您提供5mb的空间。如果超过5mb,则会提示用户(是,否)以允许LocalStorage使用更多空间(以5mb为增量)。由于你的参考文件每个可能有5mb,你可以看到这对你和用户来说很快就会变得无法管理。

编辑: 有关本机包装器,请参阅http://phonegap.com/ http://blog.clearlyinnovative.com/post/2056122828/phonegap-plugin-for-downloading-url-all-the-code用于phonegap下载插件 和https://github.com/aaronksaunders/FileDownLoadApp代码

答案 1 :(得分:2)

检查this website。向下滚动到离线存储数据。他们讨论了Sencha Touch提供了一组数据存储和代理类,这些类可以很容易地处理来自(和去往)各种来源的数据 - 服务器端和客户端......希望这有助于欢呼。 / p>