OSDN Git Service

Stop showing battery card in homepage
authorYanting Yang <yantingyang@google.com>
Wed, 21 Nov 2018 10:48:36 +0000 (18:48 +0800)
committerYanting Yang <yantingyang@google.com>
Tue, 27 Nov 2018 11:08:23 +0000 (19:08 +0800)
In previous design, we add default card feature for "me Card". But "me
Card" is being built by another team. We have removed related cards from
default card feature in ag/5394464 but battery card. Now, remove it.

Fixes: 119819851
Test: robotests
Change-Id: I445546024c80c227abce649008ec648340577e99

src/com/android/settings/homepage/contextualcards/ContextualCardLoader.java
src/com/android/settings/homepage/contextualcards/SettingsContextualCardProvider.java
tests/robotests/src/com/android/settings/homepage/contextualcards/ContextualCardLoaderTest.java

index c723cfd..4c06601 100644 (file)
@@ -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<List<ContextualCard>
 
     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<ContextualCard> contextualCards);
-    }
+    private Context mContext;
 
     ContextualCardLoader(Context context) {
         super(context);
@@ -86,9 +90,7 @@ public class ContextualCardLoader extends AsyncLoaderCompat<List<ContextualCard>
     public List<ContextualCard> loadInBackground() {
         final List<ContextualCard> 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()) {
@@ -131,24 +133,6 @@ public class ContextualCardLoader extends AsyncLoaderCompat<List<ContextualCard>
     }
 
     @VisibleForTesting
-    List<ContextualCard> createStaticCards() {
-        final long appVersionCode = getAppVersionCode();
-        final String packageName = mContext.getPackageName();
-        final double rankingScore = 0.0;
-        final List<ContextualCard> 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<ContextualCard> filterEligibleCards(List<ContextualCard> candidates) {
         return candidates.stream().filter(card -> isCardEligibleToDisplay(card))
                 .collect(Collectors.toList());
@@ -191,23 +175,7 @@ public class ContextualCardLoader extends AsyncLoaderCompat<List<ContextualCard>
                 .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<ContextualCard> 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
index db3fddc..5ff3e90 100644 (file)
@@ -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
index f9eda49..e8cb674 100644 (file)
@@ -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;
 
@@ -61,17 +60,6 @@ public class ContextualCardLoaderTest {
     }
 
     @Test
-    public void createStaticCards_shouldContainCorrectCards() {
-        final Uri batteryInfo = BatterySlice.BATTERY_CARD_URI;
-        final List<Uri> expectedUris = Arrays.asList(batteryInfo);
-
-        final List<Uri> 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()
                 .setName("custom_card")
@@ -224,4 +212,4 @@ public class ContextualCardLoaderTest {
                 .build());
         return cards;
     }
-}
+}
\ No newline at end of file