我正在尝试在我的应用上创建文件处理程序,我不是Chrome操作系统,所以尝试我的代码的唯一方法是从命令行启动应用程序,并在参数中添加文件。我的问题是:怎么样?
我试过了
chrome --appid=[TheIdOfMyApp] --[Path of the file to open]
但它只是打开应用程序,我的功能中的条目与我打开没有参数的Mado时的条目相同。
要检查我是否有条目,我会这样做:
chrome.app.runtime.onLaunched.addListener(function(items) {
console.log(items);
// The code to open the app's window...
});
它始终会返回Object {isKioskSession: false}
。
[UPDATE]
我的清单看起来像(这些只是文件处理程序和权限部分):
"file_handlers": {
"text": {
"types": ["text/md"],
"title": "MyApp"
}
},
"permissions": [
{"fileSystem": ["write", "retainEntries"]},
{"mediaGalleries": ["read", "allAutoDetected"]},
"storage",
"webview"
]
[最新消息]
有谁知道如何检查应用程序的文件处理程序是否在Windows上运行?我的代码是否正确?
感谢您的帮助。
答案 0 :(得分:3)
感谢Ben Wells,它现在正在运作。代码(如果某人有一天遇到同样的问题):
在manifest.json中:
"file_handlers": {
"text": {
"extensions": [
"md"
],
"title": "YourApp"
}
},
如何在命令行上执行操作(如果您使用的是32位Windows,请删除(x86)
):
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --app-id=YourAppId "C:\Path\To\document.md"
如果您想查看您的应用是否检测到参数,请将上面的代码(以chrome.app.runtime.onLaunched
开头的块)添加到您的后台javascript。
答案 1 :(得分:0)
打包应用程序的命令行参数似乎尚未实现。
打开issue 165573“允许将启动参数传递给平台应用程序”声明“我们需要弄清楚......是否/如何通过命令行传递这些参数”。