1

我正在尝试通过 Grails 服务器提供压缩应用程序来测试 Firefox OS 设备上的应用程序。该文件的服务方式如下:

    response.setContentType("application/x-web-app-manifest+json")
    File file = new File("/path/to/application/package.zip")
    response.setHeader("Content-disposition", "attachment;filename=${file.name}")
    response.outputStream << file.bytes

我可以在桌面浏览器上很好地下载 zip,而且它看起来也可以在设备上下载。下载后出现以下错误:

MANIFEST_PARSE_ERROR

下面看一下清单:

{
"version": "0.1",
"name": "App Name",
"description": "App Description",
"launch_path": "/target/index.html",
"icons": {
    "16": "/img/icons/mortar-16.png",
    "48": "/img/icons/mortar-48.png",
    "128": "/img/icons/mortar-128.png"
},
"developer": {
    "name": "Example Dev",
    "url": "http://example.com"
},
"installs_allowed_from": ["*"],
"default_locale": "en",
"permissions": {
}
}
4

1 回答 1

2

您的清单看起来不错(一目了然),但是从您的代码看来,您正在发送 zip 内容来代替清单?

请注意,打包的应用程序有两个清单 - zip 中的 Web 应用程序清单,以及描述应从何处安装应用程序的迷你清单。如果您从自己的页面安装打包的应用程序,您需要首先提供一个迷你清单,它告诉 Firefox OS 从哪里获取 .zip 文件。有关详细信息,请参见此处:

https://developer.mozilla.org/en-US/docs/Web/Apps/Packaged_apps#Testing_packaged_app_installation_%28without_Simulator%29

或者,您可以通过 firefox 市场提交您的 .zip 应用程序,它会为您生成迷你清单。

为确保您的 zip 包有效,您可以使用应用验证器: https ://marketplace.firefox.com/developers/validator

于 2013-07-12T04:43:05.550 回答