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

Commit 120cb783 authored by Steve Kondik's avatar Steve Kondik
Browse files

location: Add config to control download of XTRA data on boot.

Revert patch to disable download of GPS XTRA data on boot as it causes
slow GPS lock if the data isn't available for whatever reason. Make it
configurable as it's known to cause problems on certain older platforms.

Change-Id: I99f0710e7d8b54ab77cda94077365f3328752a39
parent a0dec682
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -323,4 +323,8 @@
    <!-- 2 means give warning -->
    <integer name="config_datause_notification_type">2</integer>

    <!-- Download GPS XTRA data on boot -->
    <!-- This is known to cause issues on certain platforms -->
    <bool name="config_gps_xtra_download_on_boot">true</bool>

</resources>
+6 −2
Original line number Diff line number Diff line
@@ -199,7 +199,7 @@ public class GpsLocationProvider implements LocationProviderInterface {
    // flags to trigger NTP or XTRA data download when network becomes available
    // initialized to true so we do NTP and XTRA when the network comes up after booting
    private boolean mInjectNtpTimePending = true;
    private boolean mDownloadXtraDataPending = false;
    private boolean mDownloadXtraDataPending = true;

    // true if GPS is navigating
    private boolean mNavigating;
@@ -348,6 +348,10 @@ public class GpsLocationProvider implements LocationProviderInterface {
    public GpsLocationProvider(Context context, ILocationManager locationManager) {
        mContext = context;
        mLocationManager = locationManager;

        mDownloadXtraDataPending = context.getResources().getBoolean(
                com.android.internal.R.bool.config_gps_xtra_download_on_boot);

        mNIHandler = new GpsNetInitiatedHandler(context, this);

        mLocation.setExtras(mLocationExtras);
@@ -523,7 +527,7 @@ public class GpsLocationProvider implements LocationProviderInterface {
    }

    private void handleDownloadXtraData() {
     if (!mNetworkAvailable) {
        if (!mDownloadXtraDataPending) {
            // try again when network is up
            mDownloadXtraDataPending = true;
            return;