Java 导航抽屉布局中的Admob导致应用程序在启动时崩溃

Java 导航抽屉布局中的Admob导致应用程序在启动时崩溃,java,android,android-layout,admob,navigation-drawer,Java,Android,Android Layout,Admob,Navigation Drawer,最近,谷歌改变了admob广告在android应用程序中的集成方式,因此很难找到与谷歌play服务相关的信息 我有一个应用程序,我从Github获得了很多代码,我正在尝试将admob广告与之集成。但是,无论我尝试以多少种不同的方式排列布局,admob linearLayout都会导致它在启动时崩溃。我想让它出现在页面底部 以下是布局XML在不为admob添加linearLayout的情况下的外观: <android.support.v4.widget.DrawerLayout xmlns:

最近,谷歌改变了admob广告在android应用程序中的集成方式,因此很难找到与谷歌play服务相关的信息

我有一个应用程序,我从Github获得了很多代码,我正在尝试将admob广告与之集成。但是,无论我尝试以多少种不同的方式排列布局,admob linearLayout都会导致它在启动时崩溃。我想让它出现在页面底部

以下是布局XML在不为admob添加linearLayout的情况下的外观:

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<FrameLayout
    android:id="@+id/main_content_frame"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
</FrameLayout>

<ListView
    android:id="@+id/main_left_drawer"
    android:layout_width="240dp"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:background="@color/drawerColor"
    android:choiceMode="singleChoice"
    android:divider="@color/drawerDividerColor"
    android:dividerHeight="1dp" 
    android:paddingTop="10dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:paddingBottom="20dp"/>
这是logcat崩溃时的输出:

    10-15 17:43:42.263: I/Process(13465): Sending signal. PID: 13465 SIG: 9
10-15 17:43:42.373: D/AndroidRuntime(13511): Shutting down VM
10-15 17:43:42.373: W/dalvikvm(13511): threadid=1: thread exiting with uncaught exception (group=0x41510ba8)
10-15 17:43:42.373: E/AndroidRuntime(13511): FATAL EXCEPTION: main
10-15 17:43:42.373: E/AndroidRuntime(13511): Process: com.metrico.trailerparkboyssoundboard, PID: 13511
10-15 17:43:42.373: E/AndroidRuntime(13511): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.metrico.trailerparkboyssoundboard/com.metrico.trailerparkboyssoundboard.MainActivity}: java.lang.NullPointerException
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.access$800(ActivityThread.java:135)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.os.Handler.dispatchMessage(Handler.java:102)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.os.Looper.loop(Looper.java:136)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.main(ActivityThread.java:5017)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at java.lang.reflect.Method.invokeNative(Native Method)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at java.lang.reflect.Method.invoke(Method.java:515)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at dalvik.system.NativeStart.main(Native Method)
10-15 17:43:42.373: E/AndroidRuntime(13511): Caused by: java.lang.NullPointerException
10-15 17:43:42.373: E/AndroidRuntime(13511):    at com.metrico.trailerparkboyssoundboard.MainActivity.onCreate(MainActivity.java:55)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.Activity.performCreate(Activity.java:5231)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
10-15 17:43:42.373: E/AndroidRuntime(13511):    ... 11 more
10-15 17:43:45.383: I/Process(13511): Sending signal. PID: 13511 SIG: 9
你需要打电话

#setContentView(R.layout.whatever_your_layout_is_called);

在从布局中查找视图资源之前。

感谢编辑Dici,我想知道为什么这样做不起作用。我自己已经解决了这个问题,但您的建议是正确的,我在发布的代码下调用了setContentView。谢谢!
    10-15 17:43:42.263: I/Process(13465): Sending signal. PID: 13465 SIG: 9
10-15 17:43:42.373: D/AndroidRuntime(13511): Shutting down VM
10-15 17:43:42.373: W/dalvikvm(13511): threadid=1: thread exiting with uncaught exception (group=0x41510ba8)
10-15 17:43:42.373: E/AndroidRuntime(13511): FATAL EXCEPTION: main
10-15 17:43:42.373: E/AndroidRuntime(13511): Process: com.metrico.trailerparkboyssoundboard, PID: 13511
10-15 17:43:42.373: E/AndroidRuntime(13511): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.metrico.trailerparkboyssoundboard/com.metrico.trailerparkboyssoundboard.MainActivity}: java.lang.NullPointerException
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.access$800(ActivityThread.java:135)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.os.Handler.dispatchMessage(Handler.java:102)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.os.Looper.loop(Looper.java:136)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.main(ActivityThread.java:5017)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at java.lang.reflect.Method.invokeNative(Native Method)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at java.lang.reflect.Method.invoke(Method.java:515)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at dalvik.system.NativeStart.main(Native Method)
10-15 17:43:42.373: E/AndroidRuntime(13511): Caused by: java.lang.NullPointerException
10-15 17:43:42.373: E/AndroidRuntime(13511):    at com.metrico.trailerparkboyssoundboard.MainActivity.onCreate(MainActivity.java:55)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.Activity.performCreate(Activity.java:5231)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
10-15 17:43:42.373: E/AndroidRuntime(13511):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
10-15 17:43:42.373: E/AndroidRuntime(13511):    ... 11 more
10-15 17:43:45.383: I/Process(13511): Sending signal. PID: 13511 SIG: 9
#setContentView(R.layout.whatever_your_layout_is_called);