Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit faa7e836 authored by Mike Lockwood's avatar Mike Lockwood
Browse files

DockObserver: Watch for exceptions in LocationManger.isProviderEnabled().



Change-Id: Ieb9f6b0c20a6ce2223cb4b4956580b8543094c2f
Signed-off-by: default avatarMike Lockwood <lockwood@android.com>
parent c018f3cf
Loading
Loading
Loading
Loading
+12 −2
Original line number Diff line number Diff line
@@ -421,9 +421,19 @@ class DockObserver extends UEventObserver {
                    }
                    break;
                case MSG_ENABLE_LOCATION_UPDATES:
                    if (mLocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
                    boolean networkLocationEnabled;
                    try {
                        networkLocationEnabled =
                            mLocationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
                    } catch (Exception e) {
                        // we may get IllegalArgumentException if network location provider
                        // does not exist or is not yet installed.
                        networkLocationEnabled = false;
                    }
                    if (networkLocationEnabled) {
                        mLocationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,
                                LOCATION_UPDATE_MS, LOCATION_UPDATE_DISTANCE_METER, mLocationListener);
                                LOCATION_UPDATE_MS, LOCATION_UPDATE_DISTANCE_METER, 
                                mLocationListener);
                        retrieveLocation();
                        if (mCarModeEnabled && mLocation != null && mNightMode == MODE_NIGHT_AUTO) {
                            try {