Android-智能横幅-宽度不够(始终缺少一个像素)
我想在我的Android应用程序(HTML5)的底部添加一个SMART_横幅,布局定义如下Android-智能横幅-宽度不够(始终缺少一个像素),android,smartbanner,Android,Smartbanner,我想在我的Android应用程序(HTML5)的底部添加一个SMART_横幅,布局定义如下 它与“BANNER”配合使用效果非常好,但在“SMART_BANNER”的情况下,其始终为一个像素到一个像素,并且显示以下错误: W/Ads:没有足够的空间显示广告。需要412x90 dp,但只有411x750 dp。 W/Ads:没有足够的空间显示广告。需要412x90 dp,但只有 411x750 dp 问题:我在哪里失去了一个dp(从412到411) 添加信息:我正在使用模拟器(来自Andro
它与“BANNER”配合使用效果非常好,但在“SMART_BANNER”的情况下,其始终为一个像素到一个像素,并且显示以下错误:
W/Ads:没有足够的空间显示广告。需要412x90 dp,但只有411x750 dp。
W/Ads:没有足够的空间显示广告。需要412x90 dp,但只有
411x750 dp
问题:我在哪里失去了一个dp(从412到411)
添加信息:我正在使用模拟器(来自Android Studio)。
如果我使用“Pixel 2XL API 26”(未显示智能横幅),则会出现使用问题,但如果我使用“Pixel API 28”,则会正确显示横幅
致意
Andreas您需要将AdView的宽度设置为
wrap\u content
,而不是match\u parent
。至少这是我对我的建议所做的,不管它是一个横幅还是一个智能横幅,它总是有效的
[主题外]我还注意到,在您的网络视图中,您编写了android:layout_over=“@+id/adView”
。在这种情况下,您不需要声明对adView的新引用,因为它以前已经声明过。因此,如果你简单地把@id/adView
而不是@+id
放进去,它仍然可以工作
同时尝试从布局和AdView中删除这些填充(即使设置为0)。从我看到的情况来看,没有必要使用它们。您需要将AdView的宽度设置为
wrap\u content
,而不是match\u parent
。至少这是我对我的建议所做的,不管它是一个横幅还是一个智能横幅,它总是有效的
[主题外]我还注意到,在您的网络视图中,您编写了android:layout_over=“@+id/adView”
。在这种情况下,您不需要声明对adView的新引用,因为它以前已经声明过。因此,如果你简单地把@id/adView
而不是@+id
放进去,它仍然可以工作
同时尝试从布局和AdView中删除这些填充(即使设置为0)。据我所见,不需要它们。您应该这样设置宽度和高度:
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/admob_unitid_web">
您应该这样设置宽度和高度:
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="@string/admob_unitid_web">
我仍然有这个问题。但它似乎是特定于设备的(我目前使用的是模拟器)。像素2XL出现问题(此处仅显示横幅(无智能横幅)),但“像素”可以正常工作。不幸的是,我没有一个像素2XL。这个问题可能是由仿真器引起的吗?是的,我可以向您保证99%与仿真器有关,因为AdView行为往往是仿真器的一种方式,而真实设备的另一种方式。通过在模拟器上运行应用程序,您可以注意到行为的变化,即使您使用的是真实的广告单元IDI,AdView也会始终显示“测试广告”。但它似乎是特定于设备的(我目前使用的是模拟器)。像素2XL出现问题(此处仅显示横幅(无智能横幅)),但“像素”可以正常工作。不幸的是,我没有一个像素2XL。这个问题可能是由仿真器引起的吗?是的,我可以向您保证99%与仿真器有关,因为AdView行为往往是仿真器的一种方式,而真实设备的另一种方式。通过在模拟器上运行应用程序,您可以注意到行为的变化,即使您使用的是真实的广告单元IDI,AdView也会始终显示“测试广告”。但它似乎是特定于设备的(我目前使用的是模拟器)。像素2XL出现问题(此处仅显示横幅(无智能横幅)),但“像素”可以正常工作。不幸的是,我没有一个像素2XL。这个问题可能是由模拟器引起的吗?我仍然有这个问题。但它似乎是特定于设备的(我目前使用的是模拟器)。像素2XL出现问题(此处仅显示横幅(无智能横幅)),但“像素”可以正常工作。不幸的是,我没有一个像素2XL。问题可能是由模拟器引起的吗?