iPad主屏幕应用程序每次打开都会刷新

时间:2011-07-13 22:54:51

标签: ipad sencha-touch iphone-standalone-web-app application-cache offline-web-app

我正在使用HTML5和SenchaTouch为iPad编写Web应用程序。该应用程序使用缓存清单脱机运行。一旦它被添加到主屏幕并在没有Safari的情况下打开,它将在每次打开时自动刷新,即使只是导航到主屏幕并返回。理想的行为是离开应用程序,执行其他操作,然后在未触及所有内容的情况下返回应用程序。

可以在此处找到显示相同(不受欢迎)行为的类似应用的示例:http://ignitedmediadesign.com/WebApp/index.html

我已经读过使用缓存清单应该已经在iPhone上解决了这个问题(http://www.stevesouders.com/blog/2011/06/28/lack-of-caching-for-iphone-home-screen-apps/),但似乎没有为iPhone或iPad做过这个技巧。

还有其他方法可以解决这个问题吗?是否有一些秘密可以缓存阻止我可能错过的清单文件?

1 个答案:

答案 0 :(得分:7)

我的印象是,这只是在普通Safari之外运行的“主屏幕”网络应用程序的本质。我有一个应用程序在Safari中运行得很好,有一些最小的状态保存,但爆炸的非Safari版本每次刷新。编辑:即使是展示的O'Reilly示例,每次添加到主屏幕时都会重新加载缓存清单。

您可能希望研究创建指向控制器/操作对的“路径”(URL片段)。查看MVC PhoneGap example(如果不使用PhoneGap,您可以滚动浏览所有内容并实现自己的数据模型和存储)。另请参阅此Sencha Touch MVC tutorial

此外,大多数渲染的sencha触摸组件似乎在活动项的更改之间保持状态。例如。我有一个包含所有子面板的主TabPanel。当在主TabPanel的TabBar上的选项卡之间切换时,每个子面板都会保持其渲染,除非我设置了一个侦听器或控制器操作。

希望这有帮助。

相关问题