как правильно установить admob, не появляясь на некоторых тестовых телефонах - PullRequest
1 голос
/ 13 марта 2012

Мне нужен четкий пример того, как правильно установить andmob в моем приложении, очень озадачивает, я смог выяснить, что я предполагаю, что это самая сложная часть, которая компилировала его с 3.2 и установила минимальный sdk равным 7, которыйэто минимальный sdk, на который я хотел бы нацелиться.

однако

, что я сейчас нахожу, так это то, что я могу заставить его работать на моей галактической ноте, но на моем lg optimus one иgalaxy apollo, которые являются android 2.1 и 2.2 соответственно, ни один из этих телефонов не показывал рекламу, не совсем уверен, как это имеет смысл, я также нахожу документацию admob очень запутанной и неясной, я понимаю, что разработчик может использовать либочисто xml или чисто java код для этого, я использовал чисто xml вот мой код в моем манифесте для объявления

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

edit: макет xml code

<?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:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/title_color_dark" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="center"
    android:layout_marginTop="8dp"
    android:layout_marginLeft="8dp"
    android:layout_marginRight="8dp"
    android:orientation="vertical"
    android:paddingTop="8dp" >

    <TextView
        android:id="@+id/saysomething"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/loading"
        android:textColor="#FFFFFF"
        android:textSize="30dp" />

    <TextView
        android:id="@+id/saysomethinginfo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:text="@string/loading"
        android:textColor="#FFFFFF"
        android:textSize="17dp" />

    <EditText
        android:id="@+id/tweetedittext"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/edit_text"
        android:gravity="top"
        android:hint="@string/edittext_hint"
            android:inputType="textCapSentences|textMultiLine|textAutoCorrect|textAutoComplete"
        android:lines="4"
        android:textAppearance="@style/TextAppearance.EditText" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:gravity="right"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/charactersremaining"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/characters"
            android:textColor="#FFFFFF"
            android:textSize="20dp" />

        <Button
            android:id="@+id/posttweetbutton"
            style="@style/TextAppearance.Button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="2dp"
            android:background="@drawable/button_background"
            android:onClick="posttweetbuttonClicked"
            android:text="@string/postbuttonstext"
            android:textSize="15dp" />
    </LinearLayout>

    <com.google.ads.AdView
        android:layout_marginTop="8dp"
        android:id="@+id/adView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        ads:adSize="BANNER"
        ads:adUnitId="a14f5be094d0328"
        ads:loadAdOnCreate="true" />
</LinearLayout>

редактировать 2 новые версии макета, заставляет диалоговую деятельность занимать весь экран, но по-прежнему не показывает рекламу

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

<LinearLayout
    android:layout_alignParentTop="true"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="center"
    android:layout_marginLeft="8dp"
    android:layout_marginRight="8dp"
    android:layout_marginTop="8dp"
    android:orientation="vertical"
    android:paddingTop="8dp" >

    <TextView
        android:id="@+id/saysomething"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/loading"
        android:textColor="#FFFFFF"
        android:textSize="30dp" />

    <TextView
        android:id="@+id/saysomethinginfo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:text="@string/loading"
        android:textColor="#FFFFFF"
        android:textSize="17dp" />

    <EditText
        android:id="@+id/tweetedittext"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/edit_text"
        android:gravity="top"
        android:hint="@string/edittext_hint"
        android:inputType="textCapSentences|textMultiLine|textAutoCorrect|textAutoComplete"
        android:lines="4"
        android:textAppearance="@style/TextAppearance.EditText" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:gravity="right"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/charactersremaining"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/characters"
            android:textColor="#FFFFFF"
            android:textSize="20dp" />

        <Button
            android:id="@+id/posttweetbutton"
            style="@style/TextAppearance.Button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="2dp"
            android:background="@drawable/button_background"
            android:onClick="posttweetbuttonClicked"
            android:text="@string/postbuttonstext"
            android:textSize="15dp" />
    </LinearLayout>
</LinearLayout>


<com.google.ads.AdView
    android:id="@+id/adView"
    android:layout_alignParentBottom="true"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"        
    ads:adSize="BANNER"
    ads:adUnitId="a14f5be094d0328"
    ads:loadAdOnCreate="true" />

edit 3 использует все линейные макеты без полей по бокам, но по-прежнему не производит рекламу

<?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:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/title_color_dark" >

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="center"
    android:layout_marginLeft="8dp"
    android:layout_marginRight="8dp"
    android:layout_marginTop="8dp"
    android:orientation="vertical"
    android:paddingTop="8dp" >

    <TextView
        android:id="@+id/saysomething"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/loading"
        android:textColor="#FFFFFF"
        android:textSize="30dp" />

    <TextView
        android:id="@+id/saysomethinginfo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="5dp"
        android:text="@string/loading"
        android:textColor="#FFFFFF"
        android:textSize="17dp" />

    <EditText
        android:id="@+id/tweetedittext"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/edit_text"
        android:gravity="top"
        android:hint="@string/edittext_hint"
            android:inputType="textCapSentences|textMultiLine|textAutoCorrect|textAutoComplete"
        android:lines="4"
        android:textAppearance="@style/TextAppearance.EditText" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:gravity="right"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/charactersremaining"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/characters"
            android:textColor="#FFFFFF"
            android:textSize="20dp" />

        <Button
            android:id="@+id/posttweetbutton"
            style="@style/TextAppearance.Button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="2dp"
            android:background="@drawable/button_background"
            android:onClick="posttweetbuttonClicked"
            android:text="@string/postbuttonstext"
            android:textSize="15dp" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_marginTop="8dp"
        android:orientation="vertical" >

        <com.google.ads.AdView
            android:id="@+id/adView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            ads:adSize="BANNER"
            ads:adUnitId="a14f5be094d0328"
            ads:loadAdOnCreate="true" />
    </LinearLayout>
</LinearLayout>

</LinearLayout>

1 Ответ

2 голосов
/ 13 марта 2012

Ширина AdView составляет 320 точек на дюйм, что составляет всю ширину экрана большинства телефонов в портретном режиме. AdView находится внутри LinearLayout с android:layout_marginLeft="8dp" android:layout_marginRight="8dp", поэтому у него недостаточно ширины, чтобы можно было показывать рекламу.

Если вы проверяете свои журналы, вероятно, появляется предупреждение вроде:

Not enough space to show ad! Wants: 480, 75, Has: 456, 75

Чтобы решить эту проблему, вам нужно либо удалить поля на макете верхнего уровня, либо переместить AdView за пределы верхнего уровня LinearLayout.

...