Merge "Reconfigure GNSS HAL NFW proxy app list on GNSS service crash" into qt-dev

This commit is contained in:
Anil Admal
2019-06-13 02:13:25 +00:00
committed by Android (Google) Code Review
2 changed files with 9 additions and 14 deletions

View File

@@ -937,7 +937,7 @@ public class GnssLocationProvider extends AbstractLocationProvider implements
mGnssNavigationMessageProvider.onGpsEnabledChanged(); mGnssNavigationMessageProvider.onGpsEnabledChanged();
mGnssBatchingProvider.enable(); mGnssBatchingProvider.enable();
if (mGnssVisibilityControl != null) { if (mGnssVisibilityControl != null) {
mGnssVisibilityControl.onGpsEnabledChanged(/* isEnabled= */true); mGnssVisibilityControl.onGpsEnabledChanged(/* isEnabled= */ true);
} }
} else { } else {
setGpsEnabled(false); setGpsEnabled(false);

View File

@@ -151,7 +151,6 @@ class GnssVisibilityControl {
} }
private void handleInitialize() { private void handleInitialize() {
disableNfwLocationAccess(); // Disable until config properties are loaded.
listenForProxyAppsPackageUpdates(); listenForProxyAppsPackageUpdates();
} }
@@ -261,25 +260,21 @@ class GnssVisibilityControl {
return false; return false;
} }
private void handleGpsEnabledChanged(boolean isEnabled) { private void handleGpsEnabledChanged(boolean isGpsEnabled) {
if (DEBUG) Log.d(TAG, "handleGpsEnabledChanged, isEnabled: " + isEnabled); if (DEBUG) {
Log.d(TAG, "handleGpsEnabledChanged, mIsGpsEnabled: " + mIsGpsEnabled
if (mIsGpsEnabled == isEnabled) { + ", isGpsEnabled: " + isGpsEnabled);
return;
} }
mIsGpsEnabled = isEnabled; // The proxy app list in the GNSS HAL needs to be configured if it restarts after
// a crash. So, update HAL irrespective of the previous GPS enabled state.
mIsGpsEnabled = isGpsEnabled;
if (!mIsGpsEnabled) { if (!mIsGpsEnabled) {
disableNfwLocationAccess(); disableNfwLocationAccess();
return; return;
} }
// When GNSS was disabled, we already set the proxy app list to empty in GNSS HAL. setNfwLocationAccessProxyAppsInGnssHal(getLocationPermissionEnabledProxyApps());
// Update only if the proxy app list is not empty.
String[] locationPermissionEnabledProxyApps = getLocationPermissionEnabledProxyApps();
if (locationPermissionEnabledProxyApps.length != 0) {
setNfwLocationAccessProxyAppsInGnssHal(locationPermissionEnabledProxyApps);
}
} }
private void disableNfwLocationAccess() { private void disableNfwLocationAccess() {