使用chrome.management API禁用应用

时间:2014-03-22 13:13:36

标签: javascript google-chrome google-chrome-extension

似乎Chrome中的内容发生了变化,通过设置enabled对象的ExtensionInfo属性并通过chrome.management.setEnabled()禁用应用程序变得毫无意义。

应用程序图标在chrome:// apps中显示为灰色,但单击灰色图标会自动启用它,这些方法不再管理应用程序的状态。 (但它仍适用于扩展程序

我还注意到应用不再出现在chrome://扩展程序中。

是否有任何其他未记录的方式让应用程序保持禁用状态,直到通过扩展程序切换状态?

1 个答案:

答案 0 :(得分:0)

行为按预期工作。 chrome.management.setEnabled()并不意味着永久性的政策运作;它只相当于取消选中chrome://扩展名列表或Chrome Apps Developer Tool中的“已启用”复选框。因为对应用程序图标点击的最合理解释是用户想要运行应用程序,所以无论应用程序是启用还是禁用,系统都会尊重该请求。

您可能想知道,如果“启用”概念不会阻止用户运行它们,那么“启用”概念对应用程序意味着什么。它确实具有特定含义:项目处于卸载状态,因此其后台页面无法运行以注册事件侦听器或执行其他工作。该州的一个目的是帮助追踪行为不当的应用程序和扩展程序的问题,而无需解决卸载和重新安装它们的麻烦。如果某个项目被禁用,那么您知道它不再会影响您的系统,因此将不良行为归因于该项目会更容易(或者将其排除为罪魁祸首)。

如果您想阻止自己启动应用,请将其卸载或停止点击。如果您想阻止他人启动您的应用,请不要让他们使用您的个人资料,而是指导他们设置自己的系统级用户或Chrome用户,否则让他们在Chromebook上使用访客模式。如果您想阻止他人启动他们的应用,请查看Chrome for Business,这样您就可以在合法控制的计算机上强制执行管理员策略。如果Chrome for Business没有意义(例如,因为您的父母只是希望阻止您的孩子搞乱计算机上的某些内容),请尝试Chrome Supervised Users,这是专为此案例设计的。

最后,如果这些解决方案都不适合您,那么您可能需要重新审视自己的动机。您要求进行轻量级操作(安装Chrome应用程序)以永久更改用户的系​​统(禁用其他应用程序并阻止其重新启用)。为什么用户想要那个?