【问题标题】:HTML5 Offline web apps NOT working in Android 2.x, iPhone. (However works in Android 4.0)HTML5 离线网络应用程序无法在 Android 2.x、iPhone 中运行。 (但适用于 Android 4.0)
【发布时间】:2013-04-18 02:59:30
【问题描述】:

尝试实现 HTML5 的离线功能。在做了很多谷歌搜索之后,这就是我的代码的样子。 (这是一个 django 项目;使用 mod_wsgi 插件部署在 apache2.2 中)
HTML
`

<!DOCTYPE HTML>
    <html manifest="{{MEDIA_URL}}cache.manifest">
       <head>
          <meta charset="utf-8">      
          <title>MyHomeStuff</title>      
          <script type="text/javascript" src="{{MEDIA_URL}}MyHomeStuff.js" ></script>
          <script></script>
       </head>
       <body>
         .............
       </body>
    </html>

`

Apache conf\mime.types
text/cache-manifest manifest

\Python27\Lib\mimetypes.py
'.manifest': 'text/cache-manifest', 添加到types_map 字典中

(将上述添加到 mimetypes.py,它开始适用于 android 4.0)

cache.manifest
CACHE MANIFEST <br>CACHE:
index.html
MyHomeStuff.js

编辑:
views.py `

def offlineApp(request):
    t = get_template('index.html')
    html = t.render(Context({'MEDIA_URL':'http://myDomain.com/site_media/'}))
    return HttpResponse(html)

EDIT2
是否需要使用任何特定的module/middleware 来处理django 中的text/manifest

该应用在 chrome、opera 和其他桌面浏览器上运行正常;但在 android 2.x、iPhone 浏览器的飞行模式下不加载。但它适用于 Android 4.0 浏览器!
可能是什么问题呢?请帮忙。

【问题讨论】:

  • 好的!所以我为此找到了一些解决方法。我使用manifesto 在 django 中实现离线应用程序。但是,我仍在寻找仅使用 django 的任何简单解决方案(即,没有像 manifesto 这样的附加包)

标签: android iphone django html html5-appcache


【解决方案1】:

从谷歌群组here..得到答案。

基本上是这样的:

当您提供离线 HTML5 时,您需要提供(至少)2 个页面——一个带有 html 的页面,以及一个包含清单的完全独立的第二个页面。清单文件的内容类型为 text/cache-manifest;您的 HTML 以普通的 text/html 内容类型提供。

【讨论】:

    猜你喜欢
    • 2015-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多