将AdWhirl集成到我的Android应用程序中时遇到了一个奇怪的问题。
通过AdWhirl连接的网络:
* Mileniall媒体
* AdMob
* InMobi(它给出了无效的适配器错误,但这是一个已知问题,而不是主要问题)
我已经下载并加入了AdWhirl SDK 3.0.0,各个网络的jar,并完成了手册中包含的所有步骤(清单文件中的更改,包括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()
并在网络网站上 - 我在那里看到广告请求。
但无论怎样,布局都会保持灰色。我很困惑。
答案 0 :(得分:1)
AdWhirl的文档非常糟糕。尝试这种更简单的方法来扩充AdWhirl布局:
您可以通过普通的XML布局文件轻松创建代码,而不是通过代码创建布局。不要像他们的说明那样使用LinearLayout
(我认为它已经过时了)。相反,只需将此元素放在您希望横幅所在的布局中:
<com.adwhirl.AdWhirlLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
说真的,就是这样。请确保您的AdWhirl密钥也在清单中(在<activity>
或<application>
标记内):
<meta-data android:value="Your Key"
android:name="ADWHIRL_KEY"/>
如果您确实需要以编程方式执行任何操作,则可以照常设置id
并使用findViewById
。 Lemme知道这是否有帮助。