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

Commit 9a04c98e authored by Mohit Mali's avatar Mohit Mali Committed by Abhishek Aggarwal
Browse files

Updater: Check in Settings if the device has to fetch updates from the staging OTA server

Change-Id: Ice445b0ae4086dfbea91b3a34b7f13c3553282d0
parent 1bc6f90b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -33,6 +33,7 @@
          {incr} - Incremental version
    -->
    <string name="updater_server_url" translatable="false">https://ota.ecloud.global/api/v1/{device}/{type}/{incr}</string>
    <string name="ota_staging_server_url" translatable="false"> https://test.ota.ecloud.global/api/v1/{device}/{type}/{incr}</string>

    <string name="verification_failed_notification">Verification failed</string>
    <string name="verifying_download_notification">Verifying update</string>
+30 −1
Original line number Diff line number Diff line
/*
 * Copyright (C) 2017-2022 The LineageOS Project
 * Copyright (C) 2022 ECORP SAS
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
@@ -22,8 +23,10 @@ import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.database.Cursor;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
import android.os.SystemProperties;
import android.os.storage.StorageManager;
import android.preference.PreferenceManager;
@@ -58,6 +61,7 @@ import java.util.regex.Pattern;
public class Utils {

    private static final String TAG = "Utils";
    private static final String CONTENT_URI_PATH = "content://custom.setting.Provider.OTA_SERVER/cte";

    private Utils() {
    }
@@ -182,7 +186,20 @@ public class Utils {
                SystemProperties.get(Constants.PROP_DEVICE));
        String type = SystemProperties.get(Constants.PROP_RELEASE_TYPE).toLowerCase(Locale.ROOT);

        String serverUrl = SystemProperties.get(Constants.PROP_UPDATER_URI);
        String serverUrl = "";
        if (retrieveStatus(context) != null) {
            if (retrieveStatus(context).equals("true")) {
                serverUrl = context.getString(R.string.ota_staging_server_url);
                return serverUrl.replace("{device}", device)
                        .replace("{type}", type)
                        .replace("{incr}", incrementalVersion);
            } else {
                serverUrl = SystemProperties.get(Constants.PROP_UPDATER_URI);
            }
        } else {
            serverUrl = SystemProperties.get(Constants.PROP_UPDATER_URI);
        }

        if (serverUrl.trim().isEmpty()) {
            serverUrl = context.getString(R.string.updater_server_url);
        }
@@ -192,6 +209,18 @@ public class Utils {
                .replace("{incr}", incrementalVersion);
    }

    /*get the status from database that ota option is on or off*/
    public static String retrieveStatus(Context context) {
        String status = null;
        Cursor cursor = context.getContentResolver().query(Uri.parse(CONTENT_URI_PATH), null, "id=?", new String[]{"1"}, "Status");
        if (cursor.moveToFirst()) {
            do {
                status = cursor.getString(cursor.getColumnIndex("Status"));
            } while (cursor.moveToNext());
        }
        return status;
    }

    public static String getUpgradeBlockedURL(Context context) {
        String device = SystemProperties.get(Constants.PROP_NEXT_DEVICE,
                SystemProperties.get(Constants.PROP_DEVICE));