Merge "Fix Settings app crash cause by BadParcelableException" into udc-dev
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTip.java
index 15d8c99..4a8f98b 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/BatteryDefenderTip.java
@@ -19,6 +19,7 @@
import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.Intent;
+import android.os.Parcel;
import android.util.Log;
import androidx.preference.Preference;
@@ -43,6 +44,10 @@
mIsPluggedIn = isPluggedIn;
}
+ private BatteryDefenderTip(Parcel in) {
+ super(in);
+ }
+
@Override
public CharSequence getTitle(Context context) {
return context.getString(R.string.battery_tip_limited_temporarily_title);
@@ -113,4 +118,14 @@
Log.i(TAG, "send resume charging broadcast intent=" + intent);
}
+
+ public static final Creator CREATOR = new Creator() {
+ public BatteryTip createFromParcel(Parcel in) {
+ return new BatteryDefenderTip(in);
+ }
+
+ public BatteryTip[] newArray(int size) {
+ return new BatteryDefenderTip[size];
+ }
+ };
}
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/DockDefenderTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/DockDefenderTip.java
index 134cfa0..327f974 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/DockDefenderTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/DockDefenderTip.java
@@ -19,6 +19,7 @@
import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.Intent;
+import android.os.Parcel;
import android.util.Log;
import androidx.preference.Preference;
@@ -43,6 +44,10 @@
mMode = mode;
}
+ private DockDefenderTip(Parcel in) {
+ super(in);
+ }
+
public int getMode() {
return mMode;
}
@@ -157,4 +162,14 @@
Log.i(TAG, "send resume charging broadcast intent=" + intent);
}
+
+ public static final Creator CREATOR = new Creator() {
+ public BatteryTip createFromParcel(Parcel in) {
+ return new DockDefenderTip(in);
+ }
+
+ public BatteryTip[] newArray(int size) {
+ return new DockDefenderTip[size];
+ }
+ };
}
diff --git a/src/com/android/settings/fuelgauge/batterytip/tips/IncompatibleChargerTip.java b/src/com/android/settings/fuelgauge/batterytip/tips/IncompatibleChargerTip.java
index dc9b804..1c5616f 100644
--- a/src/com/android/settings/fuelgauge/batterytip/tips/IncompatibleChargerTip.java
+++ b/src/com/android/settings/fuelgauge/batterytip/tips/IncompatibleChargerTip.java
@@ -18,7 +18,7 @@
import android.app.settings.SettingsEnums;
import android.content.Context;
-import android.content.Intent;
+import android.os.Parcel;
import android.util.Log;
import androidx.preference.Preference;
@@ -36,6 +36,10 @@
super(TipType.INCOMPATIBLE_CHARGER, state, /* showDialog */ false);
}
+ private IncompatibleChargerTip(Parcel in) {
+ super(in);
+ }
+
@Override
public CharSequence getTitle(Context context) {
return context.getString(R.string.battery_tip_incompatible_charging_title);
@@ -84,4 +88,14 @@
cardPreference.setPrimaryButtonContentDescription(context.getString(
R.string.battery_tip_incompatible_charging_content_description));
}
+
+ public static final Creator CREATOR = new Creator() {
+ public BatteryTip createFromParcel(Parcel in) {
+ return new IncompatibleChargerTip(in);
+ }
+
+ public BatteryTip[] newArray(int size) {
+ return new IncompatibleChargerTip[size];
+ }
+ };
}