Bug 1063739
| Summary: | html5 geolocation is not working | |||
|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Ocho <mr.ocho> | |
| Component: | firefox | Assignee: | Jan Horak <jhorak> | |
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | |
| Severity: | medium | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | 20 | CC: | bugzilla.blk, cpeterson, elad, gecko-bugs-nobody, general, jason, jhorak, josh, mr.ocho, pierre-bugzilla, robin.bjorklin, samuel-rhbugs, sara.c, sgraf, sitsofe, stransky | |
| Target Milestone: | --- | |||
| Target Release: | --- | |||
| Hardware: | x86_64 | |||
| OS: | Linux | |||
| Whiteboard: | ||||
| Fixed In Version: | Doc Type: | Bug Fix | ||
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 1161481 (view as bug list) | Environment: | ||
| Last Closed: | 2014-11-07 08:33:52 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
|
Description
Ocho
2014-02-11 11:13:43 UTC
I have confirmed the same issue. Firefox 27, Fedora 20, x86_64 I'm facing the same problem with Firefox 29.0 and Fedora 20 x86_64. Enabled in firefox-29.0.1-4 - see http://koji.fedoraproject.org/koji/ for new builds and please test. (In reply to Martin Stransky from comment #3) > Enabled in firefox-29.0.1-4 - see http://koji.fedoraproject.org/koji/ for > new builds and please test. I installed the finished firefox-29.0.1-4.fc19 on my fc20 but it still gives me the position unavailable error, tested in safe-mode. I have the same issue with latest Firefox 29 (Aurora). As long as the firefox rpm's are build with --disable-necko-wifi, geolocation is disabled.
firefox/NetworkGeolocationProvider.js
if (!this.wifiService && gUseScanning) {
this.wifiService = Cc["@mozilla.org/wifi/monitor;1"].getService(Components.interfaces.nsIWifiMonitor);
this.wifiService.startWatching(this);
}
Returns Cc['@mozilla.org/wifi/monitor;1'] is undefined in Browser Console.
Seriously guys, this is not acceptable.
I've lost several hours debugging this issue in my own application ... thank you
For all those who need a quick workaround (debugging): 1. Download the latest Firefox release from Mozilla 2. Unpack the archive 3. cd into archive and run ./firefox in command line - this will start the downloaded version (In reply to Joe Schmoe from comment #5) > I have the same issue with latest Firefox 29 (Aurora). As long as the > firefox rpm's are build with --disable-necko-wifi, geolocation is disabled. > > > firefox/NetworkGeolocationProvider.js > > if (!this.wifiService && gUseScanning) { > this.wifiService = > Cc["@mozilla.org/wifi/monitor;1"].getService(Components.interfaces. > nsIWifiMonitor); > this.wifiService.startWatching(this); > } > > Returns Cc['@mozilla.org/wifi/monitor;1'] is undefined in Browser Console. > > Seriously guys, this is not acceptable. > > I've lost several hours debugging this issue in my own application ... thank > you --disable-necko-wifi is not the problem here - see comment 3 and comment 4 I'm facing the same problem with Firefox 29.0.1 and Fedora 20 x86_64. You can find the same bug @Mozilla Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1009688 The wifiService error should be fixed upstream (just requires a null check). The missing API key should be obtained from Google: https://developers.google.com/maps/documentation/geocoding/index#api_key (In reply to Josh Matthews from comment #10) > The wifiService error should be fixed upstream (just requires a null check). > The missing API key should be obtained from Google: > https://developers.google.com/maps/documentation/geocoding/index#api_key Which key is required? Mozilla is using Maps for Business I presume, 2,500 limit per 24 hours seems to be quite small, isn't it? Isn't this super expensive for the Red Hat Foundation? I mean, millions, billions, trillions of requests per day! Shouldn't it be the right time, to improve a in-house, open-source Geocoding Service? Maxdata GeoIP databases are much cheaper, building such a service would take minutes! @Jan Horak: Why doesn't Mozilla itself provide a Geocoding Service? Unleash from Google! We may consider to support GeoClue2 service: https://bugzilla.mozilla.org/show_bug.cgi?id=485472 http://www.freedesktop.org/wiki/Software/GeoClue/ https://developer.gnome.org/platform-overview/stable/tech-geoclue2.html.en (In reply to cept0 from comment #13) > @Jan Horak: > > Why doesn't Mozilla itself provide a Geocoding Service? Unleash from Google! https://wiki.mozilla.org/CloudServices/Location Setting https://location.services.mozilla.com/v1/geolocate?key=something in geo.wifi.uri in about:config does make geolocation work again. Unfortunately, the data in this service is highly inaccurate if you have one or less wifi networks visible. In the Firefox 4.x days (and even before) geolocation worked in Fedora, even when necko-wifi was disabled (see bug #698535 for details on why it was disabled). Disabling necko-wifi made it less accurate, but it still worked. When Fedora's firefox was built with necko-wifi in the 3.x days geolocation did work perfectly with Google's API. I guess Google changed their licensing terms since then? Anyway, for now we have two viable options: 1) purchase a "Geolocation API for Business" license from google - which is probably not going to happen 2) Change geo.wifi.uri to the mozilla location services URL by default On the long run we would want Firefox to use GeoClue2, but until that happens we can use the Mozilla location services as a temporary workaround (I doubt it will even happen, Mozilla don't like any integration with the Linux desktop, they don't even use libnotify for desktop notifications so them using GeoClue2 seems highly unlikely to me) Yes it works with mozilla service but is (for me) highly inaccurate, still. However it works only if my wifi is turnd on. With a usb internet dongle and wifi turned off, it does not work. Geolocation should work regardless if you have wifi or not on your computer, or if it is turned on or off, protocol for geolocation API should be GPS - Wifi access points - IP location, so if wifi fails IP location should kick in, but it doesn't. So there is more stuff going on that is not right. (In reply to Ocho from comment #17) > Yes it works with mozilla service but is (for me) highly inaccurate, still. > However it works only if my wifi is turnd on. With a usb internet dongle and > wifi turned off, it does not work. Geolocation should work regardless if you > have wifi or not on your computer, or if it is turned on or off, protocol > for geolocation API should be GPS - Wifi access points - IP location, so if > wifi fails IP location should kick in, but it doesn't. So there is more > stuff going on that is not right. This will be solved once (if ever) Mozilla will switch to GeoClue2 Using mozilla location services directly is a workaround that will improve the situation at least for some users in the meanwhile. GeoClue2 also uses the Mozilla geolocation services, but also has IP and GPS based geolocation support. In theory if you have a cellular modem GeoClue2 could use cellular tower IDs too (I don't know if this is implemented). If you want to improve the accuracy and completeness of the Mozilla geolocation services, look at https://location.services.mozilla.com/ and install the Android app to map wifi networks and cell towers in your area. https://bugzilla.mozilla.org/show_bug.cgi?id=485472 is tracking a geoclue geolocation provider, and has a patch attached. *** Bug 698535 has been marked as a duplicate of this bug. *** Looks like this has been solved by Ubuntu: https://bugs.launchpad.net/ubuntu/+source/firefox/+bug/1231273 "Looking here: https://bugzilla.mozilla.org/show_bug.cgi?id=919153 It seems that each distro needs a new key from Google for location tracking, er, discovery." "The key can be added to the build with the configure flag --with-google-api-keyfile=file." "I believe that https://developers.google.com/maps/documentation/business/geolocation/ is the relevant information page for obtaining a key." Geolocation is working for me now in firefox-33.0-1.fc20.x86_64 Yes, it has been fixed already. |