Начало работы с admob для Android - запутался в документации - PullRequest
3 голосов
/ 16 марта 2011

Я только начал изучать размещение рекламы Admob в создаваемом приложении для Android. Пока ничего хорошего. Я следовал примеру в AdMod_Android_SDK_Instructions.pdf, который я скачал с сайта adMob, но я в замешательстве. На странице 7 я вижу, что операторы импорта ссылаются на пакет как com.admob.android.ads - но в загруженном мной SDK пакет com.google.ads - это остаток, оставшийся до того, как Google приобрел admob? Затем он вызывает метод a dView.requestFreshAd(); - которого нет в последнем коде. Пожалуйста, может кто-нибудь помочь мне с кодом, который действительно работает? Мои конкретные ошибки от logcat:

В AdView отсутствует обязательный атрибут XML adUnitId.

... потом после того, как я позвоню adView.loadAd(new AdRequest()); я получаю:

Invalid unknown request error: Cannot determine request type.  Is your ad unit Id correct?
onFailedToReceiveAd(Invalid Google Ad request).

Любая помощь, высоко ценится! Благодаря.

Ответы [ 4 ]

12 голосов
/ 16 мая 2011

Начиная с 4.1.0,

mob1lejunkie совершенно прав, вы можете удалить

  • attrs.xml
  • background, primarytextcolor, вторичныйtextcolor (и определитьих можно найти на веб-сайте admob на вкладке «Управление настройками» вашего приложения)
  • удалите пространство имен xmlns: myapp из основного макета в своем XML-файле и замените его на xmlns: ads (будьте осторожны здесь! Новыйxmlns находится не в / apk / res, а в apk / lib)
  • изменить пространство имен adUnitID и adSize в фрагменте кода adView xml

, так что вот рабочий фрагмент кода xml с admob 4.1.0:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="fill_parent"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads">

    <com.google.ads.AdView android:id="@+id/ad"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        ads:adUnitId="a14d7f7d2180609"
        ads:adSize="BANNER" />
</RelativeLayout>

Не слишком ли легко от Google попросить разработчиков создать новый код и использовать библиотеку, которая еще не документирована самими Google?Это напоминает мне о приключении adwhirl ...

Тем не менее, я должен сказать, что рад, что Google установил это и удалил файл attrs.xml.Гораздо проще использовать admob с наследованием проекта в Android.

Кроме того, что касается использования нескольких объявлений в проекте, обратите внимание, что с этим выпуском теперь можно добавлять идентификатор admob в строках.XML-файл вашего приложения в соответствии с запросом в этой теме: http://groups.google.com/group/google-admob-ads-sdk/browse_thread/thread/c57917b4491a0c1

Просто укажите это в своих макетах xml для всех ваших просмотров:

ads:adUnitId="@string/admob_unit_id"

, а затем

<string name="admob_unit_id">a14d7f7d2180609</string>

в вашем файле strings.xml и во всех других локализованных версиях этого файла.Это даст вам единое централизованное расположение для ввода идентификатора адмоба во всех ваших представлениях.

Отличный релиз.

С уважением, Стефф

2 голосов
/ 15 мая 2011

У меня была похожая проблема с 4.1.0, и оказалось, Документация Admob (по состоянию на 15 мая) устарела.

attrs.xml больше не требуется, а пространство имен в макете должно быть

xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads

Рейтер тогда старый

xmlns:ads="http://schemas.android.com/apk/res/com.your.packagename
1 голос
/ 03 апреля 2011

Эта страница помогла мне с размещением рекламы в формате XML: http://code.google.com/mobile/ads/docs/android/banner_xml.html

1 голос
/ 16 марта 2011

Похоже, что PDF устарел.

Попробуйте прочитать Google AdMob Ads Основы Android

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...