可能重复:
如何获取 Admob 的设备 ID
我的活动有一个 ListView,我在底部放了一个广告。当我在模拟器上运行应用程序时,我看到了测试广告。当我在手机上运行时,我会收到一个实际的广告。我想在我的手机上测试而不是得到真正的广告。
我按照 AdMob 网站上的说明在 logcat 中查找说明如何手动将设备 ID 添加到 AdRequest 的消息。问题是这条消息永远不会出现在 logcat 中。这是运行 4.1 的 RAZR。在Aracem 回答的 SO 帖子中,我读到编码字符串在开发人员选项首选项面板中可用,我找到了它。当我阅读此命令的指南时,设备 ID 的格式是字母数字(例如“E83D20734F72FB3108F104ABC0FFC738”),但我手机中的值包含字母、数字和破折号(例如“MQKF-RB61-BBKS-E”)。
我已将编码的设备 ID 添加到 XML googleads:testDevices 中,并且我还手动将 AdRequest 添加到我的 onCreate 中,并将 addTestDevice 与此字符串一起使用。都不工作。
我注意到的一件事是有效的命名空间是googleads,而不是示例中所示的广告。当我使用ads时,我在 XML 中得到前缀错误。我猜随着从 4.x 到 6.1 的切换,命名空间发生了变化。
我可以通过最小的项目实现这一点,其中 onCreate 只调用 super 和 setContentView。
布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mainLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/list"
android:layout_above="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
<com.google.ads.AdView
xmlns:googleads="http://schemas.android.com/apk/lib/com.google.ads"
android:id="@id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
googleads:adSize="BANNER"
googleads:adUnitId="@string/admob_id"
googleads:loadAdOnCreate="true"
googleads:testDevices="TEST_EMULATOR, MQKF-RB61-BBKS-E" />
显现
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="16" />
<application android:label="@string/app_name" >
<activity
android:name="mainActivity"
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>