I made a application that works fine on the emulator (using telnet and geo fix), but on the device the callbacks of the LocationListener are not called at all.
I already checked permission ( on manifest.xml), checked if GPS is active (it is, and works fine in google maps, and the satellite drawing shows up when my app turns on).
Someone has any clue on what may be happening?
The issue was indeed related to accuracy, the GPS do not work when it is not accurate.
But manually loading Wi-Fi was failing.
The correct solution is use the Criteria class, and then find the “best provider” automatically based on the Criteria. It will accept bad accuracy values, also last values when more accurate, and whatnot, mimicking the behavior of the GPS on Google Maps APP.