我用Flash(AS3 / Flex SDK / MXMLC)编写了一个游戏,该游戏可以从服务器流式传输音乐和声音文件。
我担心带宽-音频组件接近3MB,如果该游戏流行起来,它将真的增加带宽费用。
有没有什么方法可以使Flash在下载音频组件后就缓存音频组件,而不是每次在同一台PC上加载游戏时都将其流式传输?
我知道SharedObjects(“Cookie”),但是我不认为有一种方法可以在其中存储二进制数据……还是在那里?
最佳答案
当您说“流”时,我假设您的意思是通过HTTP进行渐进式下载。
对于初学者来说,您将要确保从服务器发送具有满足您目标的适当缓存头的媒体 Assets 。如果这些文件不适合缓存,则不会缓存文件。同样,查询字符串通常会阻止客户端缓存。
在这方面,Flash Player并没有真正神奇的地方-一切都应该正常工作,就好像这只是一个普通的网页一样。
您可能需要考虑将大型的静态媒体 Assets 托管在便宜的东西上(例如Amazon S3或CloudFront)。这可以减少不需要应用程序逻辑的批量传输的成本。
受评论启发而更新:这是您可能要遵循的任务大纲...
如果您已经在缓存内容,但是却没有意识到,我不会感到惊讶!
关于flash - 有可能使Flash缓存大量声音 Assets 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/801613/