我正在构建两个 AIR 应用程序——桌面和移动。
使用 spark SWFLoader 加载远程SWF 文件时,桌面应用程序在第二次加载时似乎会缓存文件(进度瞬间跳转到 100%)。相反,移动应用程序将经历相同的加载时间,即使该文件之前已加载。
所以,我的问题是:
- 加载的文件存储在桌面应用程序的什么位置?
- 如果有缓存,我们可以为移动应用做同样的事情吗?
我正在构建两个 AIR 应用程序——桌面和移动。
使用 spark SWFLoader 加载远程SWF 文件时,桌面应用程序在第二次加载时似乎会缓存文件(进度瞬间跳转到 100%)。相反,移动应用程序将经历相同的加载时间,即使该文件之前已加载。
所以,我的问题是:
您所要做的就是将主应用程序文件中的 sessionCachingEnabled 属性设置为 true。这是一个简洁的功能,允许您支持(毫不费力)这样的场景:用户导航到应用程序的第 n 个屏幕,他在该屏幕上有一些数据并且应用程序被关闭(也许用户去了一个新的应用程序或决定关闭应用程序);当他再次打开应用程序时,他将看到与上一次会话相同的屏幕。
<s:MobileApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
firstView="views.ASimpleMobileAppHome"
sessionCachingEnabled="true"
splashScreenImage="@Embed(source='loading.png')">
...
</s:MobileApplication>