diff --git a/Android.mk b/Android.mk index 61851cf1b6d..e37e9fbff1a 100644 --- a/Android.mk +++ b/Android.mk @@ -24,6 +24,7 @@ LOCAL_STATIC_ANDROID_LIBRARIES := \ android-slices-builders \ android-slices-core \ android-slices-view \ + android-support-compat \ android-support-v4 \ android-support-v13 \ android-support-v7-appcompat \ diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 644356924b9..b892dee2653 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -105,7 +105,8 @@ android:allowBackup="false" android:usesCleartextTraffic="true" android:defaultToDeviceProtectedStorage="true" - android:directBootAware="true"> + android:directBootAware="true" + android:appComponentFactory="android.support.v4.app.CoreComponentFactory"> diff --git a/proguard.flags b/proguard.flags index 21c5cfda9cd..43a038b78a7 100644 --- a/proguard.flags +++ b/proguard.flags @@ -51,3 +51,4 @@ public static ** SEARCH_INDEX_DATA_PROVIDER; public static ** SUMMARY_PROVIDER_FACTORY; } +-keep class android.support.v4.app.CoreComponentFactory diff --git a/src/com/android/settings/slices/SettingsSliceProvider.java b/src/com/android/settings/slices/SettingsSliceProvider.java index b07bcb0a9ca..1a73ea760e5 100644 --- a/src/com/android/settings/slices/SettingsSliceProvider.java +++ b/src/com/android/settings/slices/SettingsSliceProvider.java @@ -24,6 +24,7 @@ import android.graphics.drawable.Icon; import android.net.Uri; import android.net.wifi.WifiManager; import android.support.annotation.VisibleForTesting; +import android.support.v4.graphics.drawable.IconCompat; import android.util.Log; import com.android.settings.R; @@ -203,7 +204,8 @@ public class SettingsSliceProvider extends SliceProvider { .addEndItem(new SliceAction(getBroadcastIntent(ACTION_WIFI_CHANGED), null, finalWifiEnabled)) .setPrimaryAction( - new SliceAction(getIntent(Intent.ACTION_MAIN), null, null))) + new SliceAction(getIntent(Intent.ACTION_MAIN), + (IconCompat) null, null))) .build(); } diff --git a/src/com/android/settings/slices/SliceBuilderUtils.java b/src/com/android/settings/slices/SliceBuilderUtils.java index af9a3363421..09a06d30bb4 100644 --- a/src/com/android/settings/slices/SliceBuilderUtils.java +++ b/src/com/android/settings/slices/SliceBuilderUtils.java @@ -45,6 +45,7 @@ import com.android.settings.core.TogglePreferenceController; import com.android.settings.search.DatabaseIndexingUtils; import com.android.settingslib.core.AbstractPreferenceController; +import android.support.v4.graphics.drawable.IconCompat; import androidx.slice.Slice; import androidx.slice.builders.SliceAction; import androidx.slice.builders.ListBuilder; @@ -164,7 +165,7 @@ public class SliceBuilderUtils { .setTitle(sliceData.getTitle()) .setTitleItem(icon, ICON_IMAGE) .setSubtitle(subtitleText) - .setPrimaryAction(new SliceAction(contentIntent, null, null)) + .setPrimaryAction(new SliceAction(contentIntent, (IconCompat) null, null)) .addEndItem(sliceAction)) .build(); } @@ -180,7 +181,7 @@ public class SliceBuilderUtils { .setTitle(sliceData.getTitle()) .setTitleItem(icon, ICON_IMAGE) .setSubtitle(subtitleText) - .setPrimaryAction(new SliceAction(contentIntent, null, null))) + .setPrimaryAction(new SliceAction(contentIntent, (IconCompat) null, null))) .build(); } @@ -284,24 +285,25 @@ public class SliceBuilderUtils { switch (controller.getAvailabilityStatus()) { case DISABLED_UNSUPPORTED: summary = context.getString(R.string.unsupported_setting_summary); - primaryAction = new SliceAction(getSettingsIntent(context), null /* actionIcon */, + primaryAction = new SliceAction(getSettingsIntent(context), + (IconCompat) null /* actionIcon */, null /* actionTitle */); break; case DISABLED_FOR_USER: summary = context.getString(R.string.disabled_for_user_setting_summary); primaryAction = new SliceAction(getContentIntent(context, data), - null /* actionIcon */, null /* actionTitle */); + (IconCompat) null /* actionIcon */, null /* actionTitle */); break; case DISABLED_DEPENDENT_SETTING: summary = context.getString(R.string.disabled_dependent_setting_summary); primaryAction = new SliceAction(getContentIntent(context, data), - null /* actionIcon */, null /* actionTitle */); + (IconCompat) null /* actionIcon */, null /* actionTitle */); break; case UNAVAILABLE_UNKNOWN: default: summary = context.getString(R.string.unknown_unavailability_setting_summary); primaryAction = new SliceAction(getSettingsIntent(context), - null /* actionIcon */, null /* actionTitle */); + (IconCompat) null /* actionIcon */, null /* actionTitle */); } return new ListBuilder(context, data.getUri())