From ebd72ef739764e266988b49c6c25407b9e7adce3 Mon Sep 17 00:00:00 2001 From: klaus Date: Fri, 24 Apr 2026 19:44:12 +0900 Subject: [PATCH] =?UTF-8?q?feat(series-home):=20=EC=8B=9C=EB=A6=AC?= =?UTF-8?q?=EC=A6=88=20=ED=99=88=20=EC=84=B9=EC=85=98=20=EC=82=AC=EC=9D=B4?= =?UTF-8?q?=EC=97=90=20=EC=9D=B8=EB=9D=BC=EC=9D=B8=20=EB=B0=B0=EB=84=88?= =?UTF-8?q?=EB=A5=BC=20=EC=B6=94=EA=B0=80=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/home/SeriesMainHomeFragment.kt | 30 +++++++++++++++++++ .../res/layout/fragment_series_main_home.xml | 8 +++++ 2 files changed, 38 insertions(+) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/series/main/home/SeriesMainHomeFragment.kt b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/series/main/home/SeriesMainHomeFragment.kt index 3cf4cbf1..bb104bdd 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/series/main/home/SeriesMainHomeFragment.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/series/main/home/SeriesMainHomeFragment.kt @@ -12,9 +12,12 @@ import androidx.media3.common.util.UnstableApi import androidx.recyclerview.widget.GridLayoutManager import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView +import com.yandex.mobile.ads.banner.BannerAdSize +import com.yandex.mobile.ads.common.AdRequest import com.zhpan.bannerview.BaseBannerAdapter import com.zhpan.indicator.enums.IndicatorSlideMode import com.zhpan.indicator.enums.IndicatorStyle +import kr.co.vividnext.sodalive.BuildConfig import kr.co.vividnext.sodalive.R import kr.co.vividnext.sodalive.audio_content.series.SeriesListAllActivity import kr.co.vividnext.sodalive.audio_content.series.detail.SeriesDetailActivity @@ -54,9 +57,36 @@ class SeriesMainHomeFragment : BaseFragment( setupBanner() setupCompletedSeriesView() + setupInlineBanner() setupRecommendSeriesView() } + override fun onDestroyView() { + binding.yandexInlineBannerView.destroy() + super.onDestroyView() + } + + private fun setupInlineBanner() { + binding.yandexInlineBannerView.post { + val density = resources.displayMetrics.density + val adWidthPixels = binding.yandexInlineBannerView.width.takeIf { it > 0 } ?: screenWidth + val adWidthDp = (adWidthPixels / density).roundToInt() + val maxAdHeightDp = 90 + + binding.yandexInlineBannerView.apply { + setAdUnitId(BuildConfig.YANDEX_INLINE_BANNER_SERIES_MAIN_HOME_AD_UNIT_ID) + setAdSize( + BannerAdSize.inlineSize( + requireContext(), + adWidthDp, + maxAdHeightDp + ) + ) + loadAd(AdRequest.Builder().build()) + } + } + } + private fun setupBanner() { val layoutParams = binding .bannerSlider diff --git a/app/src/main/res/layout/fragment_series_main_home.xml b/app/src/main/res/layout/fragment_series_main_home.xml index 2784ae7b..5ad5533e 100644 --- a/app/src/main/res/layout/fragment_series_main_home.xml +++ b/app/src/main/res/layout/fragment_series_main_home.xml @@ -79,6 +79,14 @@ android:paddingHorizontal="24dp" /> + +