使用.manifest文件存储缓存不起作用

时间:2011-05-30 08:21:48

标签: caching ipad web-applications

我目前正在为iPad开发一个Web应用程序。 所以我用我不同的html文件,我的CSS,我的图片创建了整个“应用程序”。 现在,我的下一步是能够缓存文件以脱机使用“应用程序”。 我遵循我在不同网站上发现的建议,包括清单文件和所有内容。 看来我是唯一有这个问题的人,因为我在网上搜索了我的问题的答案,但我没有找到任何答案。

所以我创建了我的清单文件(ipad.manifest),如下所示:

    $CACHE MANIFEST

    $/WebApp/home-start.htm
    $/WebApp/accommodation.htm
    $/WebApp/accommodation2.htm
    $/WebApp/dining.htm
    $/WebApp/entertainment.htm
    $/WebApp/general.htm
    $/WebApp/home.htm
    $/WebApp/shopping.htm
    $/WebApp/sights.htm
    $/WebApp/sports.htm
    $/WebApp/css/screen3.css
    $/WebApp/Player/CanalVenetian.mp4
    $/WebApp/Player/DancingWater.mp4
    $/WebApp/Player/NaCha.mp4
    $/WebApp/Player/NaCha2.mp4
    $/WebApp/Player/Opening.mp4
    $/WebApp/Player/previewhome.jpg
    $/WebApp/Player/previewsights.jpg
    $/WebApp/Player/previewvenetian.jpg
    $/WebApp/Player/Venetian.mp4
    $/WebApp/Player/video.js
    $/WebApp/Player/Zaia.mp4
    $/WebApp/iPad/startup.png
    $/WebApp/iPad/pixel.gif
    $/WebApp/iPad/asktt-ipad-accommodation2.jpg
    $/WebApp/iPad/asktt-ipad-camera.jpg
    $....

我尝试了相对和绝对链接,但它仍然无效。

在我添加的每个html文件中:

    $<!DOCTYPE html>
    $<html manifest="ipad.manifest">
    $<head>

当我使用iPad访问网站并点击“添加到主屏幕”时,它会在主屏幕上添加图标但未下载内容。因此,每次打开应用程序时,它都会开始加载所有内容....

当我尝试使用桌面浏览器时,它没有要求我将内容缓存在我的计算机上。

我在服务器上为我的mime类型文件添加了标题“content / type:text / manifest”。

但我不明白为什么它不会缓存任何东西,或者甚至不问我是否要缓存文件???

有人有想法吗?或者有同样的问题?

1 个答案:

答案 0 :(得分:0)

尝试使用此功能,将其放在应用的根目录并将其命名为manifest.php并将其添加到您的html Web应用中

php文件从这里开始

$hashes="";

$dir = new RecursiveDirectoryIterator(".");
foreach(new RecursiveIteratorIterator($dir) as $file){
    if ($file->IsFile() &&
        $file != "./manifest.php" &&
        substr($file->getFilename(),0,1) != ".")
    {
    echo $file . "\n";
    $hashes .= md5_file($file);        
    }
}
echo "# Hash:" . md5($hashes) . "\n";

&GT?; php文件在这里结束