summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Wyatt Riley <wyattriley@google.com> 2016-10-07 21:05:55 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2016-10-07 21:05:57 +0000
commitd270004959b68abf432a0ff50926f57ffadb15cd (patch)
tree1907c9589cc7318cde84dbb254cc49464d968b60
parent35d2d12159c89c7a4eb37a01d517a3cef953c3ac (diff)
parent0d6e54e2461efd6574a78b664c42ef72cd2a79ba (diff)
Merge "Removing over-active NTP & XTRA assistance downloads" into nyc-mr1-dev
-rw-r--r--services/core/java/com/android/server/location/GnssLocationProvider.java17
1 files changed, 12 insertions, 5 deletions
diff --git a/services/core/java/com/android/server/location/GnssLocationProvider.java b/services/core/java/com/android/server/location/GnssLocationProvider.java
index 7580cf4f0111..ae98077c7c2c 100644
--- a/services/core/java/com/android/server/location/GnssLocationProvider.java
+++ b/services/core/java/com/android/server/location/GnssLocationProvider.java
@@ -452,8 +452,12 @@ public class GnssLocationProvider implements LocationProviderInterface {
new ConnectivityManager.NetworkCallback() {
@Override
public void onAvailable(Network network) {
- requestUtcTime();
- xtraDownloadRequest();
+ if (mInjectNtpTimePending == STATE_PENDING_NETWORK) {
+ requestUtcTime();
+ }
+ if (mDownloadXtraDataPending == STATE_PENDING_NETWORK) {
+ xtraDownloadRequest();
+ }
}
};
@@ -1002,6 +1006,11 @@ public class GnssLocationProvider implements LocationProviderInterface {
}
private void handleDownloadXtraData() {
+ if (!mSupportsXtra) {
+ // native code reports xtra not supported, don't try
+ Log.d(TAG, "handleDownloadXtraData() called when Xtra not supported");
+ return;
+ }
if (mDownloadXtraDataPending == STATE_DOWNLOADING) {
// already downloading data
return;
@@ -2125,9 +2134,7 @@ public class GnssLocationProvider implements LocationProviderInterface {
handleInjectNtpTime();
break;
case DOWNLOAD_XTRA_DATA:
- if (mSupportsXtra) {
- handleDownloadXtraData();
- }
+ handleDownloadXtraData();
break;
case INJECT_NTP_TIME_FINISHED:
mInjectNtpTimePending = STATE_IDLE;