2012-10-11 19 views

Respuesta

17

Si "instalado desde mi archivo .crx" quiere decir instalado desde Chrome Web Store, simplemente puede verificar la extensión manifest.json para el valor del atributo update_url. CWS lo agrega cuando cargas tu extensión.

Si usted tiene un archivo alojado en sí mismo .crx, obtener la información de su extensión usando chrome.management.getSelf() y comprobar installType de ExtensionInfo vuelto objeto. Si dice "development", significa que la extensión se cargó desempaquetada en modo desarrollador. "normal" significa que se instaló desde el archivo .crx.

+3

Chrome ha introducido desde entonces 'chrome.management.getSelf' que es mucho más apropiado para este propósito. – Xan

18

Aquí es un ejemplo de código de cómo hacer esto:

function isDevMode() { 
    return !('update_url' in chrome.runtime.getManifest()); 
} 

utiliza en Kuoll Remote Web Debugger

+2

Una forma mucho más simple es utilizar [chrome.runtime.getManifest()] (https://developer.chrome.com/extensions/runtime#method-getManifest) en su lugar. –

+0

Oh, claro. Fijo. –

1

Puede comprobar si una extensión está funcionando en el modo de programador (es decir, sin embalaje) comprobando si contiene la update_url atributo en su manifiesto. Esto se basa en el manifiesto de la extensión no empaquetada que no es que contiene el update_url. The attribute will be automatically added when publishing via the Chrome Developer Dashboard.

const IS_DEV_MODE = !('update_url' in chrome.runtime.getManifest()); 

function debugLog(str) { 
    if (IS_DEV_MODE) console.log(str); 
} 

debugLog('This only appears in developer mode'); 
Cuestiones relacionadas