2011-11-02 29 views
5

Digamos que un usuario deshabilita mi extensión y luego la habilita.¿Cómo puedo detectar si una extensión de Chrome ha sido habilitada (después de haber sido deshabilitada)

¿Cómo puedo ejecutar una función cuando la extensión se vuelve a habilitar?

Intenté hacer algo similar a ejecutar una función en-extensión-instalación, utilizando localStorage, pero no parece funcionar para este caso en-extensión-reactivado porque localStorage no se borra para la página de fondo cuando esta deshabilitado

if (!localStorage["isInstalled"]) { 
onInstall(); 
localStorage["isInstalled"] = 1; 
} 
+0

Desde la perspectiva de la extensión y del usuario, deshabilitar la extensión tiene exactamente el mismo efecto que cerrar un navegador. ¿Por qué necesitarías distinguir esos dos casos? – serg

Respuesta

1

Tener un vistazo a la management API, que le permite responder a eventos como onEnabled, disparando cuando una aplicación o extensión ha sido habilitado.

+6

Desafortunadamente onEnabled solo se activa cuando otras extensiones están habilitadas. No se activa cuando la extensión está habilitada. –

2

Una extensión por sí sola no puede supervisar cuando se deshabilita. Necesitarías una segunda extensión para controlar esto.

Como una ligera alternativa, se puede usar sessionStorage["isInstalled"] = 1;, lo que de ser anulado si la extensión se ha desactivado, pero esto también se aclararía si el usuario sale de cromo.

Cuestiones relacionadas