1

我正在尝试在我的应用程序上创建一个文件处理程序,我没有 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}

[更新]

我的清单看起来像(这些只是文件处理程序和权限部分):

"file_handlers": {
    "text": {
        "types": ["text/md"],
        "title": "MyApp"
    }
},
"permissions": [
    {"fileSystem": ["write", "retainEntries"]},
    {"mediaGalleries": ["read", "allAutoDetected"]},
    "storage",
    "webview"
]

[更新结束]

有谁知道如何检查应用程序的文件处理程序是否在 Windows 上运行?我的代码正确吗?

谢谢你的帮助。

4

2 回答 2

3

谢谢 Ben Wells,它现在可以工作了。代码(如果有一天有人遇到同样的问题):

在 manifest.json 中:

"file_handlers": {
    "text": {
        "extensions": [
            "md"
        ],
        "title": "YourApp"
    }
},

以及在命令行上做什么((x86)如果您使用的是 32 位 Windows,请删除):

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --app-id=YourAppId "C:\Path\To\document.md"

如果您想查看您的应用是否检测到参数,请将上面的代码(以 开头的块chrome.app.runtime.onLaunched)添加到您的后台 javascript。

于 2013-10-18T09:45:03.877 回答
0

打包应用程序的命令行参数似乎尚未实现。

未解决的问题 165573 “允许将启动参数传递给平台应用程序”指出“我们需要弄清楚......是否/如何通过命令行传递这些参数”。

于 2013-10-07T17:48:53.707 回答