Back traces starts.
java.lang.IllegalArgumentException: parameter must be a descendant of this view
at android.view.ViewGroup.offsetRectBetweenParentAndChild(ViewGroup.java:6278)
at android.view.ViewGroup.offsetDescendantRectToMyCoords(ViewGroup.java:6203)
at android.widget.ScrollView.isWithinDeltaOfScreen(ScrollView.java:1288)
at android.widget.ScrollView.onSizeChanged(ScrollView.java:1703)
at android.view.View.sizeChange(View.java:22431)
at android.view.View.setFrame(View.java:22381)
at android.view.View.layout(View.java:22232)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at androidx.constraintlayout.widget.ConstraintLayout.onLayout(ConstraintLayout.java:1873)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at androidx.constraintlayout.widget.ConstraintLayout.onLayout(ConstraintLayout.java:1873)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at androidx.drawerlayout.widget.DrawerLayout.onLayout(DrawerLayout.java:1231)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1103)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1829)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1829)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at android.util.MiuiMultiWindowAdapter.layoutContentView(MiuiMultiWindowAdapter.java:564)
at com.android.internal.widget.MiuiDecorCaptionView.onLayout(MiuiDecorCaptionView.java:441)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
at com.android.internal.policy.DecorView.onLayout(DecorView.java:812)
at android.view.View.layout(View.java:22237)
at android.view.ViewGroup.layout(ViewGroup.java:6395)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:3319)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2815)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1888)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8043)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:969)
at android.view.Choreographer.doCallbacks(Choreographer.java:793)
at android.view.Choreographer.doFrame(Choreographer.java:728)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:954)
at android.os.Handler.handleCallback(Handler.java:914)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:224)
at android.app.ActivityThread.main(ActivityThread.java:7551)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:995)
Back traces ends.
以上就是奔溃的详细日志,针对使用Admob广告情况。
错误的使用场景:在布局文件里AdMob横幅广告容器的父布局使用了ScrollView包裹导致的崩溃
解决:去掉ScrollView包裹