diff options
author | Mike Lockwood <lockwood@google.com> | 2010-07-28 11:04:18 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-07-28 11:04:18 -0700 |
commit | ff0aff1914f617e9cb24944e9f9608a86992df72 (patch) | |
tree | 57f60592adac6acb6504c3cd2ffc528ff42eade3 /core | |
parent | 080985458085c77a1a3344c0a02608e8359ed551 (diff) | |
parent | a58a8751b4c2ce457f0082a0baaee61312d56195 (diff) | |
download | frameworks_base-ff0aff1914f617e9cb24944e9f9608a86992df72.zip frameworks_base-ff0aff1914f617e9cb24944e9f9608a86992df72.tar.gz frameworks_base-ff0aff1914f617e9cb24944e9f9608a86992df72.tar.bz2 |
Merge "Add new system service CountryDetector"
Diffstat (limited to 'core')
-rw-r--r-- | core/java/android/app/ContextImpl.java | 16 | ||||
-rw-r--r-- | core/java/android/content/Context.java | 11 |
2 files changed, 26 insertions, 1 deletions
diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java index 8eded3d..10ebd60 100644 --- a/core/java/android/app/ContextImpl.java +++ b/core/java/android/app/ContextImpl.java @@ -62,6 +62,8 @@ import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.graphics.Bitmap; import android.graphics.drawable.Drawable; import android.hardware.SensorManager; +import android.location.CountryDetector; +import android.location.ICountryDetector; import android.location.ILocationManager; import android.location.LocationManager; import android.media.AudioManager; @@ -168,6 +170,7 @@ class ContextImpl extends Context { private static ThrottleManager sThrottleManager; private static WifiManager sWifiManager; private static LocationManager sLocationManager; + private static CountryDetector sCountryDetector; private static final HashMap<File, SharedPreferencesImpl> sSharedPrefs = new HashMap<File, SharedPreferencesImpl>(); @@ -954,6 +957,8 @@ class ContextImpl extends Context { return AccessibilityManager.getInstance(this); } else if (LOCATION_SERVICE.equals(name)) { return getLocationManager(); + } else if (COUNTRY_DETECTOR.equals(name)) { + return getCountryDetector(); } else if (SEARCH_SERVICE.equals(name)) { return getSearchManager(); } else if (SENSOR_SERVICE.equals(name)) { @@ -1120,6 +1125,17 @@ class ContextImpl extends Context { return sLocationManager; } + private CountryDetector getCountryDetector() { + synchronized (sSync) { + if (sCountryDetector == null) { + IBinder b = ServiceManager.getService(COUNTRY_DETECTOR); + ICountryDetector service = ICountryDetector.Stub.asInterface(b); + sCountryDetector = new CountryDetector(service); + } + } + return sCountryDetector; + } + private SearchManager getSearchManager() { synchronized (mSync) { if (mSearchManager == null) { diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java index b5ec633..879103e 100644 --- a/core/java/android/content/Context.java +++ b/core/java/android/content/Context.java @@ -1380,7 +1380,16 @@ public abstract class Context { * @see android.location.LocationManager */ public static final String LOCATION_SERVICE = "location"; - + + /** + * Use with {@link #getSystemService} to retrieve a + * {@link android.location.CountryDetector} for detecting the country that + * the user is in. + * + * @hide + */ + public static final String COUNTRY_DETECTOR = "country_detector"; + /** * Use with {@link #getSystemService} to retrieve a {@link * android.app.SearchManager} for handling searches. |