2016-06-22 63 views
6

Sto cercando di includere Google Map nel mio cromo app (non un'estensione, un APP).Chrome App: google maps, ha rifiutato di caricare lo script perché viola il seguente contenuto direttiva politica di sicurezza

Quando lancio l'applicazione, vedo la seguente eccezione: Rifiutato di caricare lo script 'https://maps.googleapis.com/maps/api/js?libraries=places' perché viola il seguente contenuto direttiva politica di sicurezza: "default-src 'sé' blob: filesystem: cromo in materia di estensione risorsa:". Nota che 'script-src' non è stato impostato in modo esplicito, quindi 'default-src' è usato come fallback.

So che questo è un problema di politica di sicurezza dei contenuti, ma la seguente riga nel mio file manifesto non funziona: "content_security_policy": "script src 'sé' 'non sicuro-eval' https://maps.googleapis.com; oggetto-src 'auto '' unsafe-eval '"

Questo funziona per un'estensione , ma non per un'app. Se tento di aggiungere questa riga nel mio manifest app, ottengo il seguente: "content_security_policy" è consentito solo per le estensioni e le app in pacchetto legacy, ma questa è un'app in pacchetto.

Qualcuno è riuscito a includere una visualizzazione di mappa di Google all'interno di un'applicazione di Chrome?

risposta

1

Non è possibile caricare script esterni in un'applicazione Chrome Packaged. Quello che puoi fare invece è avere un iframe nel tuo documento html principale che punta a un documento html sandbox che può avere il riferimento allo script di Google Maps di cui hai bisogno (e anche il #map div e la logica per inizializzarlo).

Guarda questo esempio di html sandbox all'interno di un iframe: https://github.com/GoogleChrome/chrome-app-samples/tree/master/samples/sandbox

Inoltre, assicurati di controllare questo documento: https://developer.chrome.com/apps/app_external#external al fine di configurare il manifesto