我在将 AdWhirl 集成到我的 Android 应用程序时遇到了一个奇怪的问题。
通过 AdWhirl 连接的网络:
* 万年传媒
* AdMob
* InMobi(它给出了无效的适配器错误,但这是一个已知问题,而不是主要问题)
我已经下载并包含了 AdWhirl SDK 3.0.0、相应网络的 jar 并完成了手册中包含的所有步骤( list 文件、lib 等的更改)
我已将 AdWhirl 代码放入我的应用中。
作为 AdWhirlLayout 占位符的布局。
<LinearLayout
android:id="@+id/ads"
android:layout_width="fill_parent"
android:layout_height="52dip"
android:layout_weight="0"
android:background="#0f0"/>
广告布局代码:
adLayout = (LinearLayout) findViewById(R.id.ads);
AdWhirlLayout adWhirlLayout = new AdWhirlLayout(this, "ad whirl code");
RelativeLayout.LayoutParams adWhirlLayoutParams = new RelativeLayout.LayoutParams(UIUtils.dip(320), UIUtils.dip(52));
adWhirlLayout.setBackgroundColor(Color.DKGRAY);
adLayout.addView(adWhirlLayout, adWhirlLayoutParams);
adLayout.invalidate();
我可以看到显示了两种布局(由于它们的颜色)。
我也知道网络连接正确,因为我可以在 logcat 中看到这一点
05-11 15:11:52.279: DEBUG/AdWhirl SDK(8013): Showing ad:
05-11 15:11:52.279: DEBUG/AdWhirl SDK(8013): nid: d10c4fe5e08f469ca1992bfe277902f5
05-11 15:11:52.279: DEBUG/AdWhirl SDK(8013): name: millennial
05-11 15:11:52.279: DEBUG/AdWhirl SDK(8013): type: 6
05-11 15:11:52.279: DEBUG/AdWhirl SDK(8013): key: XXXXX
05-11 15:11:52.279: DEBUG/AdWhirl SDK(8013): key2:
05-11 15:11:52.279: DEBUG/AdWhirl SDK(8013): Valid adapter, calling handle()
在网络站点上 - 我在那里看到了广告请求。
但是无论如何布局都保持灰色。我很困惑。
最佳答案
AdWhirl 的文档非常糟糕。试试这个更简单的方法来膨胀 AdWhirl 布局:
您可以通过普通的 XML 布局文件简单地创建它,而不是通过代码创建布局。不要使用 LinearLayout
就像他们的指示建议的那样(我认为它已经过时了)。相反,只需将此元素放在布局中您希望横幅放置的位置即可:
<com.adwhirl.AdWhirlLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
说真的,就是这样。确保您的 AdWhirl key 也在 list 中(在 <activity>
或 <application>
标记内):
<meta-data android:value="Your Key"
android:name="ADWHIRL_KEY"/>
如果你真的需要以编程方式做任何事情,你可以给布局一个 id
像往常一样使用 findViewById
.让我知道这是否有帮助。
关于android - Android 上的空 AdWhirl 布局(不显示广告),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5964869/