diff --git a/java/dagger/hilt/BUILD b/java/dagger/hilt/BUILD index ffc18323f3a..4f73c46b4e8 100644 --- a/java/dagger/hilt/BUILD +++ b/java/dagger/hilt/BUILD @@ -46,6 +46,7 @@ java_library( # TODO(bcorso): Consider using a separate processor to validate @EntryPoint. "//java/dagger/hilt/processor/internal/aggregateddeps:plugin", ], + proguard_specs = ["proguard-rules.pro"], deps = [ ":generates_root_input", ":package_info", diff --git a/java/dagger/hilt/android/BUILD b/java/dagger/hilt/android/BUILD index e9efe2cb9dd..e688cad590d 100644 --- a/java/dagger/hilt/android/BUILD +++ b/java/dagger/hilt/android/BUILD @@ -126,6 +126,7 @@ android_library( exported_plugins = [ "//java/dagger/hilt/processor/internal/aggregateddeps:plugin", ], + proguard_specs = ["proguard-rules.pro"], deps = [ ":package_info", "//:dagger_with_compiler", @@ -226,7 +227,10 @@ gen_maven_artifact( manifest = "AndroidManifest.xml", packaging = "aar", proguard_specs = [ + "//java/dagger/hilt:proguard-rules.pro", + ":proguard-rules.pro", "//java/dagger/hilt/android/lifecycle:proguard-rules.pro", + "//java/dagger/hilt/internal:proguard-rules.pro", ], ) diff --git a/java/dagger/hilt/android/proguard-rules.pro b/java/dagger/hilt/android/proguard-rules.pro new file mode 100644 index 00000000000..6fd3a82ead2 --- /dev/null +++ b/java/dagger/hilt/android/proguard-rules.pro @@ -0,0 +1,3 @@ +# Keep for the reflective cast done in EntryPoints. +# See b/183070411#comment4 for more info. +-keep,allowobfuscation,allowshrinking @dagger.hilt.android.EarlyEntryPoint class * \ No newline at end of file diff --git a/java/dagger/hilt/internal/BUILD b/java/dagger/hilt/internal/BUILD index 94a9f132fff..ad4dbb5d489 100644 --- a/java/dagger/hilt/internal/BUILD +++ b/java/dagger/hilt/internal/BUILD @@ -63,12 +63,14 @@ java_library( java_library( name = "component_entry_point", srcs = ["ComponentEntryPoint.java"], + proguard_specs = ["proguard-rules.pro"], deps = ["//java/dagger/hilt:generates_root_input"], ) java_library( name = "generated_entry_point", srcs = ["GeneratedEntryPoint.java"], + proguard_specs = ["proguard-rules.pro"], deps = ["//java/dagger/hilt:generates_root_input"], ) diff --git a/java/dagger/hilt/internal/proguard-rules.pro b/java/dagger/hilt/internal/proguard-rules.pro new file mode 100644 index 00000000000..2607ba1f346 --- /dev/null +++ b/java/dagger/hilt/internal/proguard-rules.pro @@ -0,0 +1,4 @@ +# Keep for the reflective cast done in EntryPoints. +# See b/183070411#comment4 for more info. +-keep,allowobfuscation,allowshrinking @dagger.hilt.internal.ComponentEntryPoint class * +-keep,allowobfuscation,allowshrinking @dagger.hilt.internal.GeneratedEntryPoint class * \ No newline at end of file diff --git a/java/dagger/hilt/proguard-rules.pro b/java/dagger/hilt/proguard-rules.pro new file mode 100644 index 00000000000..3b953dfa1bb --- /dev/null +++ b/java/dagger/hilt/proguard-rules.pro @@ -0,0 +1,3 @@ +# Keep for the reflective cast done in EntryPoints. +# See b/183070411#comment4 for more info. +-keep,allowobfuscation,allowshrinking @dagger.hilt.EntryPoint class * \ No newline at end of file