# Needed when building against pre-Marshmallow SDK. -dontwarn android.security.NetworkSecurityPolicy # Needed when building against Marshmallow SDK. -dontwarn android.app.Notification # Protobuf has references not on the Android boot classpath -dontwarn sun.misc.Unsafe -dontwarn libcore.io.Memory # Internal Google annotations for generating Proguard keep rules. -dontwarn com.google.android.apps.common.proguard.UsedBy* # Annotations referenced by the SDK but whose definitions are contained in # non-required dependencies. -dontwarn javax.annotation.** -dontwarn org.checkerframework.** -dontwarn com.google.errorprone.annotations.** -dontwarn org.jspecify.nullness.NullMarked # Proguard flags for consumers of the Google Play services SDK # https://developers.google.com/android/guides/setup#add_google_play_services_to_your_project # Keep SafeParcelable NULL value, needed for reflection by DowngradeableSafeParcel -keepclassmembers public class com.google.android.gms.common.internal.safeparcel.SafeParcelable { public static final *** NULL; } # Needed for Parcelable/SafeParcelable classes & their creators to not get renamed, as they are # found via reflection. -keep class com.google.android.gms.common.internal.ReflectedParcelable -keepnames class * implements com.google.android.gms.common.internal.ReflectedParcelable -keepclassmembers class * implements android.os.Parcelable { public static final *** CREATOR; } # Keep the classes/members we need for client functionality. -keep @interface android.support.annotation.Keep -keep @androidx.annotation.Keep class * -keepclasseswithmembers class * { @androidx.annotation.Keep ; } -keepclasseswithmembers class * { @androidx.annotation.Keep ; } # Keep androidX equivalent of above android.support to allow Jetification. -keep @interface androidx.annotation.Keep -keep @androidx.annotation.Keep class * -keepclasseswithmembers class * { @androidx.annotation.Keep ; } -keepclasseswithmembers class * { @androidx.annotation.Keep ; } # Keep the names of classes/members we need for client functionality. -keep @interface com.google.android.gms.common.annotation.KeepName -keepnames @com.google.android.gms.common.annotation.KeepName class * -keepclassmembernames class * { @com.google.android.gms.common.annotation.KeepName *; } # Keep Dynamite API entry points -keep @interface com.google.android.gms.common.util.DynamiteApi -keep @com.google.android.gms.common.util.DynamiteApi public class * { public ; public ; }