You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将728*90的Google AdManager广告适配至600*90的视图?

解决728*90广告适配600dp宽度视图的问题

首先明确:Google Ads政策禁止拉伸、扭曲或裁剪广告内容,必须保持广告原始宽高比,否则可能导致账号受限,所有方案需遵循这一前提。

可行方案

1. 使用自适应横幅广告(官方推荐)

自适应横幅会根据容器宽度自动请求匹配的广告尺寸,若广告商仅提供728*90,SDK会自动按比例缩放广告以适配容器(保持宽高比),但需调整容器高度为wrap_content而非固定90dp。

代码示例:

// 获取容器宽度(单位:像素,600dp需转换为像素)
val containerWidth = resources.displayMetrics.widthPixels
// 创建自适应横幅尺寸
val adaptiveSize = AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize(context, containerWidth)
// 设置广告尺寸并请求广告
adManagerAdView.setAdSizes(adaptiveSize)
adManagerAdView.loadAd(AdRequest.Builder().build())

此方案下,广告会按728:90的比例缩放,600dp宽度对应的广告高度约为75dp,需调整布局适配该高度。

2. 让广告居中显示,保留两侧留白

若必须固定容器高度为90dp,可将AdManagerAdView设置为wrap_content,并让其在容器中居中对齐。这样728*90的广告会完整显示,仅在600dp宽度的屏幕两侧留有空白,避免截断。

布局示例(XML):

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="90dp"
    android:gravity="center">

    <com.google.android.gms.ads.admanager.AdManagerAdView
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        ads:adUnitId="你的广告单元ID"/>

</FrameLayout>

3. 调整广告请求优先级,优先获取适配竖屏的尺寸

你之前请求了多种尺寸,但广告商仅返回3种。可调整尺寸请求顺序,将更适配竖屏的尺寸(如468*60)放在前面,增加获取适配尺寸的概率:

adManagerAdView.setAdSizes(
    AdSize(468, 60),
    AdSize(320, 100),
    AdSize(320, 50),
    AdSize(300, 250),
    AdSize(728, 90)
)

关于NativeAd报错的补充

你遇到的错误码3(NO_FILL)确实大概率是广告商未在AdManager后台配置原生广告模板,导致无广告返回。若要使用NativeAd,需联系广告商完成配置。

内容的提问来源于stack exchange,提问作者Sirop4ik

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 17:33:22