From 7a3d6fb3b55f57d2d79c99738daab0b62b457eb8 Mon Sep 17 00:00:00 2001 From: Brad Corso Date: Thu, 21 Jan 2021 11:40:16 -0800 Subject: [PATCH] Revert Hilt internal entry point and modules back to public to avoid r8 optimization issues. This CL is a partial rollback of changes made in CL/351213437 when introducing TestInstallIn. Making these classes pkg-private was mostly just a precaution. Making these public again should be fine since AggeregatedDepsProcessor prevents using TestInstallIn from replacing dagger.hilt modules. See https://github.com/google/dagger/issues/2291 RELNOTES=Partially Fixes 2291: Reverts Hilt internal entry point and modules back to public to avoid r8 optimization issues. The full fix on our side (until r8 bug is fixed) will be to ship a proguard config that keeps the HiltWrapper_ classes. This will be done in a future release. PiperOrigin-RevId: 353064986 --- .../android/internal/lifecycle/DefaultViewModelFactories.java | 4 ++-- .../hilt/android/internal/lifecycle/HiltViewModelFactory.java | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/java/dagger/hilt/android/internal/lifecycle/DefaultViewModelFactories.java b/java/dagger/hilt/android/internal/lifecycle/DefaultViewModelFactories.java index 915f9934d6b..427822dbbac 100644 --- a/java/dagger/hilt/android/internal/lifecycle/DefaultViewModelFactories.java +++ b/java/dagger/hilt/android/internal/lifecycle/DefaultViewModelFactories.java @@ -152,14 +152,14 @@ interface ActivityModule { /** The activity entry point to retrieve the factory. */ @EntryPoint @InstallIn(ActivityComponent.class) - interface ActivityEntryPoint { + public interface ActivityEntryPoint { InternalFactoryFactory getHiltInternalFactoryFactory(); } /** The fragment entry point to retrieve the factory. */ @EntryPoint @InstallIn(FragmentComponent.class) - interface FragmentEntryPoint { + public interface FragmentEntryPoint { InternalFactoryFactory getHiltInternalFactoryFactory(); } diff --git a/java/dagger/hilt/android/internal/lifecycle/HiltViewModelFactory.java b/java/dagger/hilt/android/internal/lifecycle/HiltViewModelFactory.java index e274df659ac..3b0d3bc43cf 100644 --- a/java/dagger/hilt/android/internal/lifecycle/HiltViewModelFactory.java +++ b/java/dagger/hilt/android/internal/lifecycle/HiltViewModelFactory.java @@ -46,9 +46,10 @@ */ public final class HiltViewModelFactory implements ViewModelProvider.Factory { + /** Hilt entry point for getting the multi-binding map of ViewModels. */ @EntryPoint @InstallIn(ViewModelComponent.class) - interface ViewModelFactoriesEntryPoint { + public interface ViewModelFactoriesEntryPoint { @HiltViewModelMap Map> getHiltViewModelMap(); }