8

Ho bisogno di usare l'autorizzazione fileSystem nel manifest.js, così posso leggere/scrivere file dalla mia estensione di Chrome.'fileSystem' è consentito solo per le app pacchettizzate, e questa è un'app pack legacy

Quando carico la mia estensione con la "Carica estensione non pacchettizzata" pulsante, Chrome mostra:

'fileSystem' is only allowed for packaged apps, and this is a legacy packaged app. 

Così per la mia estensione Chrome è un eredità app confezionato.

la mia domanda è come convertire tecnicamente un "eredità app confezionato" in un "applicazioni pacchettizzate" in modo da poter testare le API del filesystem?

Ecco il mio manifesto:

{ 
"name": "MyApp", 
"version": "1.0", 
"manifest_version": 2, 
    "app": { 
    "launch": { 
    "local_path": "index.html" 
    } 
}, 
"icons": { 
"128": "favicon.ico" 
}, 
    "permissions" : [ 
    "fileSystem" 
    ] 
} 

Infatti sto già usando "manifest_version": 2.

risposta

10

applicazioni Packaged hanno una struttura diversa nella sezione "app" del manifesto. Il tuo manifest.json sarebbe qualcosa di simile:

{ 
"name": "MyApp", 
"version": "1.0", 
"manifest_version": 2, 
    "app": { 
    "background": { 
     "scripts": ["main.js"] 
    } 
    }, 
"icons": { 
"128": "favicon.ico" 
}, 
    "permissions" : [ 
    "fileSystem" 
    ] 
} 

e si avrebbe anche bisogno di uno script di sfondo ("main.js" in questo esempio) che si apre il vostro index.html quando l'utente fa clic sull'icona dell'app:

chrome.app.runtime.onLaunched.addListener(function() { 
    chrome.app.window.create('index.html', { 
    bounds: { 
     width: 500, 
     height: 300 
    } 
    }); 
}); 
+0

Più: https://developer.chrome.com/apps/about_apps.html – sowbug

+8

Google non è sicuramente la rende facile per sviluppatori di produrre applicazioni: confusione tra le estensioni, applicazioni e applicazioni pacchettizzate, autorizzazioni limitate hosted –

+3

Se cambio l'estensione in un'app, allora ottengo che le "schede" sono consentite solo per le estensioni e le app preesistenti, ma questa è un'app confezionata. cappello? È anche possibile richiedere sia le autorizzazioni 'tabs' che' filesystem'? –

-2

Aggiungi questo al vostro manifesto:

"manifest_version": 2, 
Problemi correlati