request location based country detector in WiFi ON
bug: 179272424
Change-Id: I665d7a19077a6a09f47f33d3927add9e561f9fce
Signed-off-by: Seungah Lim <sss.lim@samsung.com>
diff --git a/services/core/java/com/android/server/location/countrydetector/ComprehensiveCountryDetector.java b/services/core/java/com/android/server/location/countrydetector/ComprehensiveCountryDetector.java
index af3907e..dda502b 100644
--- a/services/core/java/com/android/server/location/countrydetector/ComprehensiveCountryDetector.java
+++ b/services/core/java/com/android/server/location/countrydetector/ComprehensiveCountryDetector.java
@@ -320,13 +320,15 @@
"(source: " + detectedCountry.getSource()
+ ", countryISO: " + detectedCountry.getCountryIso() + ")")
+ " isAirplaneModeOff()=" + isAirplaneModeOff()
+ + " isWifiOn()=" + isWifiOn()
+ " mListener=" + mListener
+ " isGeoCoderImplemnted()=" + isGeoCoderImplemented());
}
if (startLocationBasedDetection && (detectedCountry == null
|| detectedCountry.getSource() > Country.COUNTRY_SOURCE_LOCATION)
- && isAirplaneModeOff() && mListener != null && isGeoCoderImplemented()) {
+ && (isAirplaneModeOff() || isWifiOn()) && mListener != null
+ && isGeoCoderImplemented()) {
if (DEBUG) Slog.d(TAG, "run startLocationBasedDetector()");
// Start finding location when the source is less reliable than the
// location and the airplane mode is off (as geocoder will not
@@ -387,6 +389,11 @@
mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_ON, 0) == 0;
}
+ protected boolean isWifiOn() {
+ return Settings.Global.getInt(
+ mContext.getContentResolver(), Settings.Global.WIFI_ON, 0) != 0;
+ }
+
/**
* Notify the country change.
*/