diff --git a/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceController.java b/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceController.java
index 69fc0f1..249bf9b 100644
--- a/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceController.java
+++ b/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceController.java
@@ -91,6 +91,9 @@
     }
 
     public void updateBatteryTips(List<BatteryTip> batteryTips) {
+        if (batteryTips == null) {
+            return;
+        }
         if (mBatteryTips == null) {
             mBatteryTips = batteryTips;
         } else {
@@ -100,7 +103,6 @@
             }
         }
 
-        //TODO(b/70570352): try to reuse the existing preference rather than remove and add.
         mPreferenceGroup.removeAll();
         for (int i = 0, size = batteryTips.size(); i < size; i++) {
             final BatteryTip batteryTip = mBatteryTips.get(i);
diff --git a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceControllerTest.java
index 8a189e2..90d00fc 100644
--- a/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/fuelgauge/batterytip/BatteryTipPreferenceControllerTest.java
@@ -150,6 +150,19 @@
     }
 
     @Test
+    public void testRestoreFromNull_shouldNotCrash() {
+        final Bundle bundle = new Bundle();
+        // Battery tip list is null at this time
+        mBatteryTipPreferenceController.saveInstanceState(bundle);
+
+        final BatteryTipPreferenceController controller = new BatteryTipPreferenceController(
+                mContext, KEY_PREF, mSettingsActivity, mFragment, mBatteryTipListener);
+
+        // Should not crash
+        controller.restoreInstanceState(bundle);
+    }
+
+    @Test
     public void testHandlePreferenceTreeClick_noDialog_invokeCallback() {
         when(mBatteryTip.getType()).thenReturn(SMART_BATTERY_MANAGER);
         List<BatteryTip> batteryTips = new ArrayList<>();
