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

Commit 9a948529 authored by Sudheer Shanka's avatar Sudheer Shanka
Browse files

Cache device provisioning package in AppStandbyController.

This is not going to change within a boot session, so no need to
keep querying it multiple times.

Fixes: 198303868
Test: treehugger verification
Change-Id: I9d93452ddd1a928607cfe13c5a49f919271be0e9
parent 951010c5
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -264,6 +264,11 @@ public class AppStandbyController
    // get the cached value
    private static final long NETWORK_SCORER_CACHE_DURATION_MILLIS = 5000L;

    // Cache the device provisioning package queried from resource config_deviceProvisioningPackage.
    // Note that there is no synchronization on this method which is okay since in the worst case
    // scenario, they might be a few extra reads from resources.
    private String mCachedDeviceProvisioningPackage = null;

    // Messages for the handler
    static final int MSG_INFORM_LISTENERS = 3;
    static final int MSG_FORCE_IDLE_STATE = 4;
@@ -1641,9 +1646,11 @@ public class AppStandbyController
     * returns {@code false}.
     */
    private boolean isDeviceProvisioningPackage(String packageName) {
        String deviceProvisioningPackage = mContext.getResources().getString(
        if (mCachedDeviceProvisioningPackage == null) {
            mCachedDeviceProvisioningPackage = mContext.getResources().getString(
                    com.android.internal.R.string.config_deviceProvisioningPackage);
        return deviceProvisioningPackage != null && deviceProvisioningPackage.equals(packageName);
        }
        return mCachedDeviceProvisioningPackage.equals(packageName);
    }

    private boolean isCarrierApp(String packageName) {