2013-04-21 7 views
5

Ho creato una piccola estensione di Chrome: mostra le informazioni su IP e geolocalizzazione. L'ho provato più volte, impacchettato (usando Grunt) e caricato sul Chrome Web Store. Ho verificato più volte che il file zip risultante contiene tutti i file necessari all'app + il manifest.Messaggio di errore dell'installazione dell'estensione di Chrome

Ho quindi rimosso la versione locale e ho provato a installare dal negozio web. Continuo a ricevere questo errore, anche dopo l'aggiornamento, e riavviare il browser più volte:

". C'è stato un problema l'aggiunta di questa voce per Chrome Aggiorna la pagina e riprova"

enter image description here

Come posso debug/risolvere questo problema?

  • Il codice per la mia estensione è molto semplice e in realtà è aperto su GitHub.
  • Il file manifest è disponibile here.
  • L'estensione è disponibile su Chrome Store here.

Aggiornamento:

Guardando la console JS, vedo un errore ogni volta che ha colpito il pulsante di installazione:

webstorePrivate.beginInstallWithManifest3: Invalid manifesta

Nessuna ulteriore informazione, e per me il file manifest sembra ok (e funziona quando caricato localmente).

risposta

3

Ok, ho impiegato un po ', ma ho trovato il colpevole e l'ho risolto. Ho usato Yeoman e Generator-Chrome-Extension per riavviare l'estensione. Uno dei compiti del Gruntfile.js recita così:

grunt.registerTask('manifest', function() { 
     var manifest = grunt.file.readJSON(yeomanConfig.app + '/manifest.json'); 
     //manifest.background.scripts = ['scripts/background.js']; 
     grunt.file.write(yeomanConfig.dist + '/manifest.json', JSON.stringify(manifest, null, 2)); 
    }); 

Come si può vedere nella terza riga (commentato), il compito inietta uno script background.js Anche se non ne hai bisogno. Inoltre se tu, come me, utilizzi uno sfondo pagina, ciò rende il manifest non valido.

Per qualche motivo, funzionerà localmente, non solo dal negozio. Una volta che ho commentato quella riga, il manifest è valido e l'estensione disponibile.

+1

ho preso il codice direttamente e non ha avuto problemi di caricarla a livello locale così ho provato l'editoria solo a me stesso e non ho problemi ad installarlo dallo store senza cambiare nulla se non le tue directory. Per essere precisi ho creato la directory 'app' come root per l'estensione quando l'ho compresso. – BeardFist

+1

Sì, questo mi ha anche sconcertato. Se guardi la mia soluzione, vedrai che il Gruntfile è temperato dal manifest. La buona notizia è che chiunque abbia mantenuto questo generatore lo ha già risolto. –

+1

Dovresti accettare la tua risposta ora :) – Ryan

2

Ho avuto lo stesso problema. Ho rimosso:

"app": { 
    "urls": [ 
    ], 

Dal file Manifest.json e funziona. Spero che questo ti aiuti.

1

Ho avuto lo stesso problema e ho effettuato l'accesso con un proxy e il problema è stato risolto.

Provate un proxy come immagino.