diff --git a/src/com/android/settings/homepage/contextualcards/ContextualCardLoader.java b/src/com/android/settings/homepage/contextualcards/ContextualCardLoader.java index c723cfd0245..4c06601a431 100644 --- a/src/com/android/settings/homepage/contextualcards/ContextualCardLoader.java +++ b/src/com/android/settings/homepage/contextualcards/ContextualCardLoader.java @@ -23,7 +23,6 @@ import static androidx.slice.widget.SliceLiveData.SUPPORTED_SPECS; import android.content.ContentProviderClient; import android.content.ContentResolver; import android.content.Context; -import android.content.pm.PackageManager; import android.database.ContentObserver; import android.database.Cursor; import android.net.Uri; @@ -35,7 +34,6 @@ import androidx.annotation.NonNull; import androidx.annotation.VisibleForTesting; import androidx.slice.Slice; -import com.android.settings.homepage.contextualcards.deviceinfo.BatterySlice; import com.android.settings.homepage.contextualcards.slices.ConnectedDeviceSlice; import com.android.settings.wifi.WifiSlice; import com.android.settingslib.utils.AsyncLoaderCompat; @@ -52,11 +50,17 @@ public class ContextualCardLoader extends AsyncLoaderCompat private static final String TAG = "ContextualCardLoader"; - private Context mContext; + private final ContentObserver mObserver = new ContentObserver( + new Handler(Looper.getMainLooper())) { + @Override + public void onChange(boolean selfChange) { + if (isStarted()) { + forceLoad(); + } + } + }; - public interface CardContentLoaderListener { - void onFinishCardLoading(List contextualCards); - } + private Context mContext; ContextualCardLoader(Context context) { super(context); @@ -86,9 +90,7 @@ public class ContextualCardLoader extends AsyncLoaderCompat public List loadInBackground() { final List result = new ArrayList<>(); try (Cursor cursor = getContextualCardsFromProvider()) { - if (cursor.getCount() == 0) { - result.addAll(createStaticCards()); - } else { + if (cursor.getCount() > 0) { for (cursor.moveToFirst(); !cursor.isAfterLast(); cursor.moveToNext()) { final ContextualCard card = new ContextualCard(cursor); if (card.isCustomCard()) { @@ -130,24 +132,6 @@ public class ContextualCardLoader extends AsyncLoaderCompat return CardDatabaseHelper.getInstance(mContext).getContextualCards(); } - @VisibleForTesting - List createStaticCards() { - final long appVersionCode = getAppVersionCode(); - final String packageName = mContext.getPackageName(); - final double rankingScore = 0.0; - final List result = new ArrayList(); - result.add(new ContextualCard.Builder() - .setSliceUri(BatterySlice.BATTERY_CARD_URI) - .setName(BatterySlice.PATH_BATTERY_INFO) - .setPackageName(packageName) - .setRankingScore(rankingScore) - .setAppVersion(appVersionCode) - .setCardType(ContextualCard.CardType.SLICE) - .setIsHalfWidth(false) - .build()); - return result; - } - @VisibleForTesting List filterEligibleCards(List candidates) { return candidates.stream().filter(card -> isCardEligibleToDisplay(card)) @@ -191,23 +175,7 @@ public class ContextualCardLoader extends AsyncLoaderCompat .count(); } - private long getAppVersionCode() { - try { - return mContext.getPackageManager().getPackageInfo(mContext.getPackageName(), - 0 /* flags */).getLongVersionCode(); - } catch (PackageManager.NameNotFoundException e) { - Log.e(TAG, "Invalid package name for context", e); - } - return -1L; + public interface CardContentLoaderListener { + void onFinishCardLoading(List contextualCards); } - - private final ContentObserver mObserver = new ContentObserver( - new Handler(Looper.getMainLooper())) { - @Override - public void onChange(boolean selfChange) { - if (isStarted()) { - forceLoad(); - } - } - }; -} +} \ No newline at end of file diff --git a/src/com/android/settings/homepage/contextualcards/SettingsContextualCardProvider.java b/src/com/android/settings/homepage/contextualcards/SettingsContextualCardProvider.java index db3fddc8a93..5ff3e909e42 100644 --- a/src/com/android/settings/homepage/contextualcards/SettingsContextualCardProvider.java +++ b/src/com/android/settings/homepage/contextualcards/SettingsContextualCardProvider.java @@ -20,7 +20,6 @@ import static android.provider.SettingsSlicesContract.KEY_WIFI; import android.annotation.Nullable; -import com.android.settings.homepage.contextualcards.deviceinfo.BatterySlice; import com.android.settings.homepage.contextualcards.slices.BatteryFixSlice; import com.android.settings.homepage.contextualcards.slices.ConnectedDeviceSlice; import com.android.settings.homepage.contextualcards.slices.LowStorageSlice; @@ -44,12 +43,6 @@ public class SettingsContextualCardProvider extends ContextualCardProvider { .setCardName(KEY_WIFI) .setCardCategory(ContextualCard.Category.IMPORTANT) .build(); - final ContextualCard batteryInfoCard = - ContextualCard.newBuilder() - .setSliceUri(BatterySlice.BATTERY_CARD_URI.toString()) - .setCardName(BatterySlice.PATH_BATTERY_INFO) - .setCardCategory(ContextualCard.Category.DEFAULT) - .build(); final ContextualCard connectedDeviceCard = ContextualCard.newBuilder() .setSliceUri(ConnectedDeviceSlice.CONNECTED_DEVICE_URI.toString()) @@ -70,7 +63,6 @@ public class SettingsContextualCardProvider extends ContextualCardProvider { .build(); final ContextualCardList cards = ContextualCardList.newBuilder() .addCard(wifiCard) - .addCard(batteryInfoCard) .addCard(connectedDeviceCard) .addCard(lowStorageCard) .addCard(batteryFixCard) @@ -78,4 +70,4 @@ public class SettingsContextualCardProvider extends ContextualCardProvider { return cards; } -} +} \ No newline at end of file diff --git a/tests/robotests/src/com/android/settings/homepage/contextualcards/ContextualCardLoaderTest.java b/tests/robotests/src/com/android/settings/homepage/contextualcards/ContextualCardLoaderTest.java index f9eda497cb2..e8cb67474bb 100644 --- a/tests/robotests/src/com/android/settings/homepage/contextualcards/ContextualCardLoaderTest.java +++ b/tests/robotests/src/com/android/settings/homepage/contextualcards/ContextualCardLoaderTest.java @@ -40,7 +40,6 @@ import org.robolectric.RuntimeEnvironment; import org.robolectric.shadows.ShadowContentResolver; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; @@ -60,17 +59,6 @@ public class ContextualCardLoaderTest { mProvider); } - @Test - public void createStaticCards_shouldContainCorrectCards() { - final Uri batteryInfo = BatterySlice.BATTERY_CARD_URI; - final List expectedUris = Arrays.asList(batteryInfo); - - final List actualCardUris = mContextualCardLoader.createStaticCards().stream().map( - ContextualCard::getSliceUri).collect(Collectors.toList()); - - assertThat(actualCardUris).containsExactlyElementsIn(expectedUris); - } - @Test public void isCardEligibleToDisplay_customCard_returnTrue() { final ContextualCard customCard = new ContextualCard.Builder() @@ -224,4 +212,4 @@ public class ContextualCardLoaderTest { .build()); return cards; } -} +} \ No newline at end of file