我知道我可以使用phonegap为Apple应用程序构建webapp,但如果我想在iPad上使用它,我必须成为Apple Developer(99美元或299美元/年)。但我只想小规模地使用它。
所以我想知道是否有任何浏览器应用程序可以将所有webapp的文件复制到iPad的文档文件夹,并在嵌入式浏览器中查看它们,如phonegap?我知道我可以将webapp添加到主屏幕并像标准应用程序一样与它们进行交互,但我希望它离线,因为webapp是2GB而且不需要上网。
浏览器应用应该是全屏,没有状态栏,没有Bonuce效果,并且加载index.html auto。
答案 0 :(得分:1)
如果您希望应用程序脱机,您有两种选择:
或者,如果您的网页是静态内容,您可以考虑使用iBook Author将它们打包为电子书并使用iTunes将其加载到您的设备。但是,对于2GB的数据,这可能不会很好。
答案 1 :(得分:0)
是的,您可以使用元标记apple-mobile-web-app-capable
和HTML5应用缓存执行此操作。如您所见,您可以将应用程序添加到主屏幕。使用此技术,该应用程序还将脱机和全屏运行。
<head>
:<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no" />
将manifest="cache.manifest"
添加到<html>
。 cache.manifest
是您将用于定义缓存内容的文件的名称。它可以被命名为任何东西,但我实际上称之为我的cache.manifest
。
<html lang="en" manifest="cache.manifest">
然后确保您的Web服务器将.manifest
的MIME类型设置为:
文本/缓存清单
然后创建一个名为cache.manifest
的文件,将其放入您的app根目录中。在CACHE
部分下,放置要缓存的文件(在您的情况下,所有文件)。您也可以使用*
表示“所有文件”。
每次推送版本时,都会更改缓存清单中的版本号。文件中的任何更改都可以,但版本号是一个完美的机制。
CACHE MANIFEST
#ver 1.0.0
CACHE:
app.html
app.css
app.js
然后将其放在onload
内的脚本顶部或等效内容中。
function updateVersion( event ) {
window.applicationCache.removeEventListener( 'updateready', updateVersion, false );
if ( window.applicationCache.status == window.applicationCache.UPDATEREADY ) {
//perhaps notify user here
window.applicationCache.swapCache();
window.location.reload();
};
};
if ( window.applicationCache ) {
window.applicationCache.addEventListener( 'updateready', updateVersion, false );
};