我正在尝试编写一个 Chrome 打包应用程序,该应用程序最终会从命令行接受文件作为参数,但我不知道如何使其工作。这就是我正在做的事情:
manifest.json:
...
"file_handlers" : {
"text" : {
"types" : [ "*" ],
"title" : "File Opener"
}
},
...
my-background-page.js:
chrome.app.runtime.onLaunched.addListener(function (launchData) {
chrome.app.window.create('my-file.html', { ... }, function (win) {
win.contentWindow.launchData = launchData;
});
});
(我希望 launchData
填写通过命令行传递的文件的数据。)
命令:
"C:\Program Files\Google\Chrome\Application\chrome.exe" --app-id=my-app-id "C:\path\to\file.txt"
当我执行上述命令时,打包的应用程序打开了所有精美的功能,但 launchData
未定义。
我在这里遗漏了一些明显的东西吗?我在 Windows 7 上运行 Chrome 27,并且真的很想让它发挥作用!
谢谢...
最佳答案
结果是这样的:我通过命令行传递的文件具有 Chrome 未知的 MIME 类型 (27),目前,当发生这种情况时,该文件会从 launchData
中省略>。幸运的是,这个问题在 Chrome 28 中得到了修复(我相信),并且我已经确认该应用程序可以在 Chrome Canary 中运行(目前最多为 29 beta)。
参见this供进一步引用的问题。
关于file - Chrome 打包应用程序从命令行传递文件(通过 launchData),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17029124/