我正在尝试通过Grails服务器提供zip'ed应用程序来测试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": {
}
}
答案 0 :(得分:2)
你的表现看起来不错(一目了然),但从你的代码来看,它看起来你发送的是拉链内容而不是清单?
请注意,打包应用程序有两个清单 - zip中的Web应用程序清单,以及描述应安装应用程序位置的迷你清单。如果您要从自己的页面安装打包的应用程序,则需要首先提供迷你清单,告诉Firefox OS从哪里获取.zip文件。有关详细信息,请参见此处:
或者我可以通过firefox市场提交你的.zip应用程序,它会为你生成迷你清单。
为确保您的zip包有效,您可以使用应用验证器: https://marketplace.firefox.com/developers/validator