无法使用Google SDK在Android上安装AdMob广告

时间:2011-03-25 23:16:39

标签: android sdk admob

我一直在寻找答案,但我找不到同样的情况,所以我求助于你......

我正在尝试使用google SDK(而不是admob sdk)将广告放入我的Android应用中。在模拟器中运行应用程序时,我看到的日志消息是:

03-25 22:35:17.457: INFO/Ads(853): adRequestUrlHtml: [ contains two <script> tags ]
03-25 22:35:21.028: INFO/Ads(853): Received ad url: [ big long url ]

有时我会:

03-25 22:35:21.828: INFO/Ads(853): onFailedToReceiveAd(No ad to show.)
也许我能理解,但我也得到了:

03-25 22:50:56.817: INFO/Ads(1084): onFailedToReceiveAd(A network error occurred.)

如果我在桌面浏览器中点击上面的“大长网”,我会得到一个大约1/2的时间广告,并将另一个广告空白。 (您好,Dish Network)我从未收到过错误。

我可以使用模拟器的浏览器浏览网页,因此网络组件正在运行。

该应用具有互联网权限。

我对缺乏可用的示例代码感到沮丧 - 我看到很多人使用旧的admob SDK和使用google SDK的人的一些代码片段,但不是一个令人难以置信的示例/教程。

我已经注释掉了我的其余代码,但无济于事。这是代码的主要部分:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    AdView adView = new AdView(this, AdSize.BANNER, ADMOB_PUBLISHER_ID);
    LinearLayout layout = (LinearLayout)findViewById(R.id.mainLayout);
    layout.addView(adView);
    AdRequest req = new AdRequest();
    // req.setTesting(true);
    adView.loadAd(req);
}

我的清单包括:

<activity android:name="com.google.ads.AdActivity"
          android:configChanges="keyboard|keyboardHidden|orientation"/>

<uses-permission android:name="android.permission.INTERNET" /> 

我的main.xml包含页面的这种布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/yellow"
android:id="@+id/mainLayout"
>

admob支持尚未回复。

任何人都可以帮助我或者至少向我推荐一款完美的google sdk指南,以获得adob noob吗?

谢谢!

3 个答案:

答案 0 :(得分:1)

你有没有添加attr.xml文件???

<?xml version="1.0" encoding="utf-8"?>
 <resources>
  <declare-styleable name="com.google.ads.AdView">
     <attr name="adSize">
      <enum name="BANNER" value="1"/>
      <enum name="IAB_MRECT" value="2"/>
      <enum name="IAB_BANNER" value="3"/>
      <enum name="IAB_LEADERBOARD" value="4"/>
     </attr>
     <attr name="adUnitId" format="string"/>
  </declare-styleable>
 </resources>

答案 1 :(得分:0)

尝试将此权限行添加到AndroidManifest.xml文件

 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 

答案 2 :(得分:0)

朋友们,我今天遇到了同样的问题。我遵循了谷歌指令。终于我明白了。您可以自定义呼叫加载请求。像这样:

AdRequest re = new AdRequest();
//re.setTesting(true);
re.setGender(AdRequest.Gender.FEMALE); 
adview.loadAd(re);

你可以尝试我的例子,我把我的apk和源代码放在这里:

Add Google Admob in Android Application