On Fri, Sep 13, 2013 at 12:20 AM, Igor Leturia <[email protected]> wrote: > On Tuesday, September 10, 2013 3:35:12 PM UTC+2, Jan Jongboom wrote: >> On Friday, September 6, 2013 5:47:20 PM UTC+2, Igor Leturia wrote: >> > Hi all, >> > I have developed an app for guiding people in their hikes with maps, >> > tracks and GPS position, Hiking Guide >> > (https://marketplace.firefox.com/app/hiking-guide). I developed it so that >> > it could use OpenStreetMap and Google Maps. >> > But Google Maps library has to be included as an external JS file, and the >> > CSP does not allow this. I tried to download the JS and include it with >> > the app, but this is not recommended since they update it quite often. And >> > they explicitly try to disallow so: in the first JS file >> > (http://maps.google.com/maps/api/js?v=3&sensor=false), other JS files >> > are downloaded by script injection into the HTML document and it does this >> > many times, so it is not easy to download the whole library... And if I >> > just include the first, the CSP blocks the injection... >> > The only solution for the app not to be rejected has been to remove all >> > Google Maps functionality completely... >> > Not having a way to use Google Maps in Firefox OS is a great disadvantage >> > for this platform. A web app can be used in other platforms with Google >> > Maps, but not in Firefox OS (I have tried mine on Android with Firefox >> > with no problems). This can make Firefox OS unattractive for developers or >> > users... Besides, porting a working web app to Firefox OS is not as simple >> > as including a manifest file or zipping it for a packaged app, as it is >> > claimed... >> > So my question is: couldn't Firefox OS include a way to have some >> > 'trusted' sources, from which external JS files could be included and >> > where eval()-like functions could be called? That way, this and other >> > libraries could be used. >> > Thanks in advance, >> > Igor Leturia >> >> Why do you need to be a privileged app? If you aren't you don't have CSP >> restrictions. > > I need to access the geolocation and sd-card APIs, and I can only do that > with a privileged app.
Geolocation is available to all apps (though you still need to enumerate the permission in the manifest), but sd-card APIs is indeed only available to privileged apps. What you can do is to use an <iframe> which points to a URL on a webserver run by you. In that page you can then use google maps. We do need to come up with a better solution for this I agree, but this workaround might work in the meantime. / Jonas _______________________________________________ dev-b2g mailing list [email protected] https://lists.mozilla.org/listinfo/dev-b2g
