我在onPostCreate中创建这样的onPostCreate:
private AdView mAd;
public void onPostCreate(Activity a) {
LOGE(TAG, "Ads are enabled: creating");
mAd = (AdView) (a.findViewById(R.id.adView));
AdRequest adRequest = new AdRequest();
adRequest.addTestDevice("xxxxxx");
mAd.loadAd(new AdRequest());
}我就这样毁了它:
public void onDestroy(Activity a) {
if (mAd != null) {
mAd.destroy();
}
super.onDestroy();
}从我的用户日志中,我有时可以看到:
由: android.webkit.WebView.requestFocus(WebView.java:8925)的java.lang.NullPointerException .在android.view.ViewGroup.removeView(ViewGroup.java:2135)。在org.akul.psy.gui.BaseActivity.onDestroy(BaseActivity.java:69)
我相信这是因为我破坏我的AdView是有问题的。
我做得对吗?我一定要这么做吗?我正在摧毁它,因为我遵循了谷歌的榜样(我相信)。
发布于 2014-04-01 15:32:00
只有在像这样的代码中创建了adView实例时,才必须销毁AdView
AdView adView =新AdView(this);
但在您的示例中,您的Adview位于xml中,您试图查找视图的实例(而不是新的内存分配)。当活动从堆栈中移除时,xml中创建的实例将被销毁。
https://stackoverflow.com/questions/22790205
复制相似问题