如何检查是否安装了Firefox插件(在另一台计算机上)?

时间:2011-08-12 12:46:43

标签: firefox-addon

作为我对网络使用的研究的一部分,我让人们安装一个Firefox插件来跟踪他们的访问(有点像RescueTime,但我的研究不同)。

所以我担心用户是否通过卸载插件来作弊。有没有办法让addon在安装/卸载插件时通知我?

我知道有很多解决方法(比如,只使用另一个浏览器客户端)。但是我能为这个非常具体的案例做些什么呢?

PS - 对于Chrome扩展程序我有同样的问题,它的功能几乎完全相同。我想我应该开始另一个线程来问这个问题。

2 个答案:

答案 0 :(得分:2)

您可以为em-action-requested主题注册观察员:https://developer.mozilla.org/en/Observer_Notifications#Extension_Manager。这样,只要用户选择卸载加载项,您就会收到通知。这里有许多限制:

  • 禁用的加载项不会收到通知(它们不活动)。但是,只要用户选择禁用加载项,您就会收到通知。
  • 大多数加载项不会立即卸载,通常需要重新启动浏览器。在重新启动之前,用户仍然可以选择恢复其操作。
  • 可以在浏览器未运行时卸载加载项,只需删除相应的目录/文件即可。届时不会发送任何通知。

如果要验证加载项是否仍然安装,将常规“我还活着”信号发送到服务器可能更可靠。

答案 1 :(得分:2)

对于Firefox 4.0及更高版本,您可以使用新的AddonManager interface。调用addAddonListener()方法以传入侦听器。在侦听器as documented上实现方法,包括onUninstalling()和/或onUninstalled()。