在Android上使用广告的正确方法是什么?

时间:2016-11-09 04:07:53

标签: java android ads

所以我过去几天一直试图弄清楚如何在eclipse上运行Android上做广告。从我看到你要么下载谷歌sdk jar使用广告Googleadmobsdk jar。或者你转到以前的版本,将aar文件更改为zip并取出“classes”jar并将其放入libs文件夹。

所以我使用类jar的问题是我在代码编译时遇到了inflater错误。它无法在我的activity_main中夸大广告视图。

使用googleadMobsdk jar的问题是AdRequst.Builder()的java代码不起作用。它无法找到构建器部分。

两者的问题是在代码编译之前我得到了一个错误。

这是我的代码,目前我的代码jar运行代码而googleadMobsdk没有。

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.coursebook.MainActivity" >
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scroll"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" >
</LinearLayout>

</ScrollView>


<fragment
    android:id="@+id/navigation_drawer"
    android:name="com.example.coursebook.NavigationDrawerFragment"
    android:layout_width="@dimen/navigation_drawer_width"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    tools:layout="@layout/fragment_navigation_drawer" />
<com.google.ads.AdView 
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true"
        ads:adSize="BANNER"
        ads:adUnitId="ca-xxxxxxxxxx"/>

</android.support.v4.widget.DrawerLayout>

和清单

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

<meta-data android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version"/>

最后是位于onCreate()

内的Java代码
    setContentView(R.layout.activity_main);
    AdView mAdView = (AdView) findViewById(R.id.adView);
    AdRequest request = new AdRequest.Builder()
    .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)       
    .build();
    mAdView.loadAd(request);

使用此设置,在编译之前我没有错误。 如果我删除类jar并将其替换为替代jar,则无法解析AdRequest.Builder。

这是我目前正在导入的内容,当我切换到另一个jar时我需要更改它们,以及活动主要回到google。

import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdRequest.Builder;

1 个答案:

答案 0 :(得分:0)

如果您今天仍遇到同样的问题,可以将项目迁移到Android Studio。在那里,您可以将adMob无缝集成到您的项目中,如下所示:

Stream&gt; Tools&gt; Firebase&gt; AdMob