2013-04-20 50 views
3

这是我加的广告活动打开它时:应用程序崩溃使用AdMob,Android的

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

/* Intent intent = new Intent(this, SelectArticle.class); 
    startActivity(intent);*/ 

    // Create the adView 
    adView = new AdView(this, AdSize.BANNER, "a15172dfcf0c366"); 

    // Lookup your LinearLayout assuming it's been given 
    // the attribute android:id="@+id/mainLayout" 
    TableLayoutlayout = (TableLayout)findViewById(R.layout.activity_main); 

    // Add the adView to it 
    layout.addView(adView); 

    // Initiate a generic request to load it with an ad 
    adView.loadAd(new AdRequest()); 

    setContentView(R.layout.activity_main); 
} 

在清单的结尾:

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

</manifest> 

我还加了jar文件googleAdmob。

当我打开应用程序它崩溃了。我应该添加什么?

回答

0

您的应用程序崩溃的原因是因为您在致电setContentView()之前致电findViewById()。要解决此问题,请将setContentView(R.layout.activity_main)行移动到super.onCreate()行的下方。 这仍然不能解决您的问题,因为当您调用findViewById时,您正在使用R.layout.main_activity,因为它是布局,所以无法工作。你必须给你的XML文件linearlayout属性android:id="@+id/main_activity,然后你必须改变你实例的线性布局,以

findViewById(R。ID .activity_main)