diff options
Diffstat (limited to 'sdk')
-rw-r--r-- | sdk/src/java/cyanogenmod/weather/CMWeatherManager.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sdk/src/java/cyanogenmod/weather/CMWeatherManager.java b/sdk/src/java/cyanogenmod/weather/CMWeatherManager.java index a5f0dd2..b351f8a 100644 --- a/sdk/src/java/cyanogenmod/weather/CMWeatherManager.java +++ b/sdk/src/java/cyanogenmod/weather/CMWeatherManager.java @@ -246,6 +246,8 @@ public class CMWeatherManager { */ public void registerWeatherServiceProviderChangeListener( @NonNull WeatherServiceProviderChangeListener listener) { + if (sWeatherManagerService == null) return; + synchronized (mProviderChangedListeners) { if (mProviderChangedListeners.contains(listener)) { throw new IllegalArgumentException("Listener already registered"); @@ -267,6 +269,8 @@ public class CMWeatherManager { */ public void unregisterWeatherServiceProviderChangeListener( @NonNull WeatherServiceProviderChangeListener listener) { + if (sWeatherManagerService == null) return; + synchronized (mProviderChangedListeners) { if (!mProviderChangedListeners.contains(listener)) { throw new IllegalArgumentException("Listener was never registered"); @@ -287,6 +291,8 @@ public class CMWeatherManager { * @return the service's label */ public String getActiveWeatherServiceProviderLabel() { + if (sWeatherManagerService == null) return null; + try { return sWeatherManagerService.getActiveWeatherServiceProviderLabel(); } catch(RemoteException e){ |