From 0a5641b2c88fe92dc656adb76190647c1caa5146 Mon Sep 17 00:00:00 2001 From: shubang Date: Thu, 27 Dec 2018 11:09:43 -0800 Subject: use Dagger for OnboardingActivity PiperOrigin-RevId: 227044606 Change-Id: I16f225c956bddd65cf892681b4605976e4c613c0 --- src/com/android/tv/modules/TvApplicationModule.java | 4 +++- src/com/android/tv/onboarding/OnboardingActivity.java | 14 ++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/com/android/tv/modules/TvApplicationModule.java b/src/com/android/tv/modules/TvApplicationModule.java index d2831937..48e7fe79 100644 --- a/src/com/android/tv/modules/TvApplicationModule.java +++ b/src/com/android/tv/modules/TvApplicationModule.java @@ -17,8 +17,10 @@ package com.android.tv.modules; import com.android.tv.MainActivity; import com.android.tv.TvApplication; +import com.android.tv.onboarding.OnboardingActivity; import dagger.Module; /** Dagger module for {@link TvApplication}. */ -@Module(includes = {TvSingletonsModule.class, MainActivity.Module.class}) +@Module(includes = { + TvSingletonsModule.class, MainActivity.Module.class, OnboardingActivity.Module.class}) public class TvApplicationModule {} diff --git a/src/com/android/tv/onboarding/OnboardingActivity.java b/src/com/android/tv/onboarding/OnboardingActivity.java index d01721f3..16e97885 100644 --- a/src/com/android/tv/onboarding/OnboardingActivity.java +++ b/src/com/android/tv/onboarding/OnboardingActivity.java @@ -37,6 +37,9 @@ import com.android.tv.data.ChannelDataManager; import com.android.tv.util.OnboardingUtils; import com.android.tv.util.SetupUtils; import com.android.tv.util.TvInputManagerHelper; +import dagger.android.AndroidInjection; +import dagger.android.ContributesAndroidInjector; +import javax.inject.Inject; public class OnboardingActivity extends SetupActivity { private static final String KEY_INTENT_AFTER_COMPLETION = "key_intent_after_completion"; @@ -47,7 +50,7 @@ public class OnboardingActivity extends SetupActivity { private static final int REQUEST_CODE_START_SETUP_ACTIVITY = 1; - private ChannelDataManager mChannelDataManager; + @Inject ChannelDataManager mChannelDataManager; private TvInputManagerHelper mInputManager; private SetupUtils mSetupUtils; private final ChannelDataManager.Listener mChannelListener = @@ -80,12 +83,12 @@ public class OnboardingActivity extends SetupActivity { @Override protected void onCreate(Bundle savedInstanceState) { + AndroidInjection.inject(this); super.onCreate(savedInstanceState); TvSingletons singletons = TvSingletons.getSingletons(this); mInputManager = singletons.getTvInputManagerHelper(); mSetupUtils = singletons.getSetupUtils(); if (PermissionUtils.hasAccessAllEpg(this) || PermissionUtils.hasReadTvListings(this)) { - mChannelDataManager = singletons.getChannelDataManager(); // Make the channels of the new inputs which have been setup outside Live TV // browsable. if (mChannelDataManager.isDbLoadFinished()) { @@ -222,4 +225,11 @@ public class OnboardingActivity extends SetupActivity { } return false; } + + /** Exports {@link OnboardingActivity} for Dagger codegen to create the appropriate injector. */ + @dagger.Module + public abstract static class Module { + @ContributesAndroidInjector + abstract OnboardingActivity contributeOnboardingActivityInjector(); + } } -- cgit v1.2.3