diff options
author | destradaa <destradaa@google.com> | 2015-04-29 23:09:52 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-04-29 23:09:53 +0000 |
commit | db2af23408a5b92011f9384bfb320ac8843f22b3 (patch) | |
tree | 5b290bab15f2ac70b39f4e4f4e21de26ac47206d | |
parent | b351db7239ee1c0cb9561f92efc19d4e95eba367 (diff) | |
parent | bfb3bdb918e93cfe24517319541cf40ba53148aa (diff) | |
download | frameworks_base-db2af23408a5b92011f9384bfb320ac8843f22b3.zip frameworks_base-db2af23408a5b92011f9384bfb320ac8843f22b3.tar.gz frameworks_base-db2af23408a5b92011f9384bfb320ac8843f22b3.tar.bz2 |
Merge "Update use of A-GPS modes in GpsLocationProvider b/20664846" into mnc-dev
-rw-r--r-- | services/core/java/com/android/server/location/GpsLocationProvider.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/location/GpsLocationProvider.java b/services/core/java/com/android/server/location/GpsLocationProvider.java index d3240ec..6bd646d 100644 --- a/services/core/java/com/android/server/location/GpsLocationProvider.java +++ b/services/core/java/com/android/server/location/GpsLocationProvider.java @@ -952,13 +952,18 @@ public class GpsLocationProvider implements LocationProviderInterface { return GPS_POSITION_MODE_STANDALONE; } } + // MS-Based is the preferred mode for Assisted-GPS position computation, so we favor + // such mode when it is available + if (hasCapability(GPS_CAPABILITY_MSB) && (suplMode & AGPS_SUPL_MODE_MSB) != 0) { + return GPS_POSITION_MODE_MS_BASED; + } + // for now, just as the legacy code did, we fallback to MS-Assisted if it is available, + // do fallback only for single-shot requests, because it is too expensive to do for + // periodic requests as well if (singleShot && hasCapability(GPS_CAPABILITY_MSA) && (suplMode & AGPS_SUPL_MODE_MSA) != 0) { return GPS_POSITION_MODE_MS_ASSISTED; - } else if (hasCapability(GPS_CAPABILITY_MSB) - && (suplMode & AGPS_SUPL_MODE_MSB) != 0) { - return GPS_POSITION_MODE_MS_BASED; } } return GPS_POSITION_MODE_STANDALONE; |