将托盘图标分配给Google Chrome网络应用程序

7
我需要创建一个Web应用程序,该应用程序将存储在Windows的系统托盘中,以防止用户意外关闭我的应用程序(无需预先关闭警报消息)。
我认为Google Chrome的后台应用程序可能是正确的选择,主要是因为我不需要跨浏览器兼容性,并且我必须选择用户将使用哪个浏览器来运行此Web应用程序。
唯一的问题是我不知道是否可以通过此功能实现我所需的内容。
我只找到了Chrome中这个后台应用程序的示例倒计时应用。但是,该应用程序使用了“后台页”功能,而这与我所寻找的功能不同。
如何让Chrome应用程序最小化到系统托盘(甚至最小化到任务栏也可以),而不是被关闭?
2个回答

1
尝试使用node-webkit(chromium + node.js)进行编程:https://github.com/rogerwang/node-webkit。它允许创建任何Web应用程序,并支持托盘图标:https://github.com/rogerwang/node-webkit/wiki/Tray。您可以在此处下载我的Windows示例应用程序:https://mega.co.nz/#!xQMzgbxD!S58G-V23QLNRDFC10xso41-T2V8OZQVsQEH-lr46R3s
如果你想要使用Chrome,可以尝试这个NPAPI插件示例:http://minimizetotray.googlecode.com/files/SourceCode.zip(来源于http://habrahabr.ru/post/73003/)。请注意,保留HTML标签。

1

很不幸,我认为您无法完全实现您想要的内容。您可以尝试结合下面的两个解决方案来接近您的要求。但是,我认为您想要的控件类型在Google应用中不可用。

Google应用启动器

Google应用启动器可以满足“存储在Windows任务栏中”的要求。

Chrome应用启动器是所有Chrome应用的中心,通过它,您可以快速访问桌面上的所有应用。当您从Chrome网络应用商店的“适用于您的桌面”集合安装应用程序时,您将获得应用启动器。 应用启动器需要您登录Chrome以启用需要访问您Google帐户的应用程序。
管理应用
当您下载一个新的启用应用启动器的应用程序时,Chrome新标签页上的应用书签中的应用程序也将出现在应用启动器中。 在应用启动器中管理应用程序非常简单。
添加更多应用:点击应用列表中的Chrome Web Store按钮Chrome Web Store button并浏览商店中的应用程序。

背景:扩展您的应用程序寿命

您在问题中提到了后台应用程序,但我建议您进一步探索它。它基本上提供了您所述的“防止用户意外关闭我的应用程序”的要求。这并不是绝对可靠的(请参见下面的加粗句子),但我认为这已经是您能够实现的最接近要求的方法。

从Google Chrome 10开始,后台功能使托管应用程序可以在用户登录计算机后立即运行-在用户启动Chrome或应用程序之前-并且即使Chrome或应用程序没有可见窗口也可以继续运行。但是,如果用户明确退出Chrome,则浏览器和应用程序都会退出。


谢谢,这些信息对我来说已经很清楚了。我不知道使用背景功能是否只能恢复关闭的窗口,还是必须从后台进程向窗口进程提供数据,以便始终可用... 我认为一个例子会非常有用。 - Fez Vrasta

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接