Admob发布ID错误 [英] Admob publish id error

查看:72
本文介绍了Admob发布ID错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经创建了付费应用程序,并且正在尝试使用admob广告创建免费的应用程序。我按照Google教程SDK 6.1的说明设置了整个proyect,但运行时不起作用。

I have created a paid application and I'm trying to create the free with admob ads. I setup the entire proyect as explained on Google's tutorial with SDK 6.1, but when running it doesn't work.

我使用的代码与教程相同:
Main.xml

The code I have used is the same as the tutorial: Main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent">
    <TextView android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:text="@string/hello"/>
    <com.google.ads.AdView android:id="@+id/ad"
                           android:layout_width="wrap_content"
                           android:layout_height="wrap_content"
                           ads:adSize="BANNER"
                           ads:adUnitId="xxxxxxxxxx" 
                           ads:loadAdOnCreate="true"/>
</LinearLayout>

BannerSample.java
包com.google.example.ads.xml;

BannerSample.java package com.google.example.ads.xml;

import android.app.Activity;
import android.os.Bundle;

/**
 * A simple {@link Activity} which embeds an AdView in its layout XML.
 */
public class BannerSample extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // This example requires no additional code since the optional
    // "loadAdOnCreate=true" XML attribute was used. If "loadAdOnCreate" were
    // not specified, the ad would have to be loaded by creating an AdRequest
    // and using Activity.findViewById() to get the AdView.
    //
    // The "loadAdOnCreate" XML attribute makes it simpler to get ads since no
    // code is required, but it also limits the developer's control over the ad
    // request since a generic AdRequest is used.
  }
}

我得到的错误:

07-28 21:34:48.704: E/Ads(15980): JS: Uncaught ReferenceError: AFMA_getSdkConstants is not defined (about:blank:1)
07-28 21:34:48.704: E/Web Console(15980): Uncaught ReferenceError: AFMA_getSdkConstants is not defined at about:blank:1
07-28 21:36:48.841: E/Ads(15980): JS: Uncaught ReferenceError: AFMA_getSdkConstants is not defined (about:blank:1)
07-28 21:36:48.841: E/Web Console(15980): Uncaught ReferenceError: AFMA_getSdkConstants is not defined at about:blank:1
07-28 21:38:48.958: E/Ads(15980): JS: Uncaught ReferenceError: AFMA_getSdkConstants is not defined (about:blank:1)
07-28 21:38:48.958: E/Web Console(15980): Uncaught ReferenceError: AFMA_getSdkConstants is not defined at about:blank:1
07-28 21:40:49.066: E/Ads(15980): JS: Uncaught ReferenceError: AFMA_getSdkConstants is not defined (about:blank:1)
07-28 21:40:49.066: E/Web Console(15980): Uncaught ReferenceError: AFMA_getSdkConstants is not defined at about:blank:1
07-28 21:42:02.817: E/chromium(17098): external/chromium/net/disk_cache/stat_hub.cc:190: [0728/214202:ERROR:stat_hub.cc(190)] StatHub::Init - App com.google.example.ads.xml isn't supported.
07-28 21:42:02.827: E/chromium(17098): external/chromium/net/disk_cache/stat_hub.cc:190: [0728/214202:ERROR:stat_hub.cc(190)] StatHub::Init - App com.google.example.ads.xml isn't supported.
07-28 21:42:03.178: E/Ads(17098): JS: Uncaught ReferenceError: AFMA_getSdkConstants is not defined (about:blank:1)
07-28 21:42:03.198: E/Web Console(17098): Uncaught ReferenceError: AFMA_getSdkConstants is not defined at about:blank:1

谢谢

更新:
新代码和错误代码是:
BannerSample.java

UPDATE: New code and erros are: BannerSample.java

package com.google.example.ads.xml;

import com.google.ads.AdRequest;
import com.google.ads.AdView;

import android.app.Activity;
import android.os.Bundle;
import android.os.Looper;

/**
 * A simple {@link Activity} which embeds an AdView in its layout XML.
 */
public class BannerSample extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // This example requires no additional code since the optional
    // "loadAdOnCreate=true" XML attribute was used. If "loadAdOnCreate" were
    // not specified, the ad would have to be loaded by creating an AdRequest
    // and using Activity.findViewById() to get the AdView.
    //
    // The "loadAdOnCreate" XML attribute makes it simpler to get ads since no
    // code is required, but it also limits the developer's control over the ad
    // request since a generic AdRequest is used.
    (new Thread() {
        public void run() {
             Looper.prepare();
             AdView view = (AdView) findViewById(R.id.ad);
             view.loadAd(new AdRequest());
        }
    }).start();
  }
}

错误:

07-28 21:42:02.817: E/chromium(17098): external/chromium/net/disk_cache/stat_hub.cc:190: [0728/214202:ERROR:stat_hub.cc(190)] StatHub::Init - App com.google.example.ads.xml isn't supported.
07-28 21:42:02.827: E/chromium(17098): external/chromium/net/disk_cache/stat_hub.cc:190: [0728/214202:ERROR:stat_hub.cc(190)] StatHub::Init - App com.google.example.ads.xml isn't supported.

更新2:
对不起,我忘记发布清单了:

UPDATE 2: Sorry I forget to post the manifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.google.example.ads.xml"
          android:versionCode="1"
          android:versionName="1.0">
    <uses-sdk android:targetSdkVersion="15" android:minSdkVersion="3"/> 

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

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <meta-data android:value=" a1501435dfa5050 " android:name="ADMOB_PUBLISHER_ID" />
        <activity android:name=".BannerSample"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity android:name="com.google.ads.AdActivity"
                  android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
    </application>
</manifest>


推荐答案

(new Thread() {
            public void run() {
                 Looper.prepare();
                adView.loadAd(new AdRequest());
            }
        }).start();

在ICS中,您不允许在主线程中执行网络操作

In ICS you're not allowed to perform network operation in the main thread

这篇关于Admob发布ID错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆