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

Commit b752c3d0 authored by Chaohui Wang's avatar Chaohui Wang
Browse files

Make the default getTimeSpentInApp() return empty

Current ApplicationFeatureProvider.getTimeSpentInApp() defaults returns
null, in extreme case there is ACTION_APP_USAGE_SETTINGS handler on
device but getTimeSpentInApp() still returns null, may lead
AppTimeSpentPreference to crash.

Make it returns empty string instead to eliminate this extreme case.

Bug: 236346018
Test: Unit test & Manual with SpaActivity
Change-Id: I33b413ceb9bdf48e3902e02c91fab617fe297862
parent b036cfab
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -19,6 +19,8 @@ package com.android.settings.applications;
import android.annotation.UserIdInt;
import android.content.Intent;

import androidx.annotation.NonNull;

import java.util.List;
import java.util.Set;

@@ -85,8 +87,9 @@ public interface ApplicationFeatureProvider {
     * Returns a user readable text explaining how much time user has spent in an app at a
     * pre-specified duration.
     */
    @NonNull
    default CharSequence getTimeSpentInApp(String packageName) {
        return null;
        return "";
    }

    /**
+0 −2
Original line number Diff line number Diff line
@@ -35,13 +35,11 @@ import androidx.test.core.app.ApplicationProvider
import androidx.test.ext.junit.runners.AndroidJUnit4
import com.android.settings.R
import com.android.settings.testutils.FakeFeatureFactory
import com.android.settingslib.spaprivileged.framework.common.storageStatsManager
import org.junit.Before
import org.junit.Rule
import org.junit.Test
import org.junit.runner.RunWith
import org.mockito.Mock
import org.mockito.Mockito
import org.mockito.Mockito.any
import org.mockito.Mockito.anyInt
import org.mockito.Spy