admob adview在旋转时导致android崩溃

时间:2012-10-17 23:13:07

标签: android android-layout admob

我从xml中添加了这个admob adview;

<com.google.ads.AdView
        android:id="@+id/adView"
        android:layout_above="@id/footerContainer"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        ads:adSize="BANNER"
        ads:adUnitId="..."
        ads:loadAdOnCreate="true"
        ads:testDevices="TEST_EMULATOR" />

首先;似乎没有问题。但是当我快速改变屏幕的方向几次时;该应用程序崩溃了。我有这些错误;

1- bitmap size exceeds VM budget
  

java.lang.OutOfMemoryError:位图大小超过VM预算   android.graphics.Bitmap.nativeCreate(Native Method)at   android.graphics.Bitmap.createBitmap(Bitmap.java:477)at   android.graphics.Bitmap.createBitmap(Bitmap.java:444)at   android.graphics.Bitmap.createScaledBitmap(Bitmap.java:349)at   android.graphics.BitmapFactory.finishDecode(BitmapFactory.java:498)at at   android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:473)at at   android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:336)   在   android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:697)   在android.content.res.Resources.loadDrawable(Resources.java:1785)at   android.content.res.TypedArray.getDrawable(TypedArray.java:601)at at   android.widget.ImageView。(ImageView.java:118)at   android.widget.ImageButton。(ImageButton.java:85)at   android.widget.ImageButton。(ImageButton.java:81)at   java.lang.reflect.Constructor.constructNative(Native Method)at   java.lang.reflect中...

     

2-二进制XML文件行#16:错误扩充类

     

android.view.InflateException:二进制XML文件行#16:错误   膨胀班   android.view.LayoutInflater.createView(LayoutInflater.java:518)at   com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)   在   android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:568)   在android.view.LayoutInflater.rInflate(LayoutInflater.java:623)处   android.view.LayoutInflater.inflate(LayoutInflater.java:408)at   android.view.LayoutInflater.inflate(LayoutInflater.java:320)at   android.view.LayoutInflater.inflate(LayoutInflater.java:276)at   com.X.ui.FooterFragment.onCreateView(FooterFragment.java:21)at at   android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:846)   在   android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1061)   在   android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:291)   在   android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:...

     

3-无法启动活动   ComponentInfo {com.x / com.x.ui.HomeActivity}:   android.view.InflateException:二进制XML文件行#13:错误   膨胀班

     

java.lang.RuntimeException:无法启动活动   ComponentInfo {com.X / com.X.ui.HomeActivity}:   android.view.InflateException:二进制XML文件行#13:错误   膨胀班   android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1768)   在   android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1784)   在   android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:2953)   在android.app.ActivityThread.access $ 1600(ActivityThread.java:123)at   android.app.ActivityThread $ H.handleMessage(ActivityThread.java:943)at   android.os.Handler.dispatchMessage(Handler.java:99)at   android.os.Looper.loop(Looper.java:130)at   android.app.ActivityThread.main(ActivityThread.java:3835)at   java.lang.reflect.Method.invokeNative(Native Method)at   java.lang.reflect.Method.invoke(Method.java:507)at   com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:864)   在com.android.internal.os.ZygoteInit.main(Zygo。

我尝试按照here描述的方式添加它,但没有任何改变......有什么想法吗?

1 个答案:

答案 0 :(得分:0)

对于1,您使用的SDK版本以及运行它的设备是什么?这可能是模拟器特定的问题。

2和3可能是由于未正确链接AdMob库。请参阅Error inflating class com.google.ads.AdView