Java 由于实施Admob ads,活动无法启动
我一直在尝试制作一个带有广告的消息应用程序,当应用程序在实现AdMob时崩溃。不知道为什么应用程序会崩溃,但我怀疑可能与其他现有代码冲突。下面的代码有什么问题吗 爪哇: 日志类别: 致命异常:主 流程:comdanishansogning.wixsite.httpshobojuniors.danishansgning,PID:3879 java.lang.RuntimeException:无法启动活动组件信息{comdanishansogning.wixsite.httpshobojuniors.danishaninging/comdanishansogning.wixsite.httpshobojuniors.danishaninging.MainActivity}:java.lang.NullPointerException:尝试调用虚拟方法'void com.google.android.gms.advisew.loadAd(com.google.android.gms.ads.adrquest)'在空对象引用上 舱单:Java 由于实施Admob ads,活动无法启动,java,android,admob,Java,Android,Admob,我一直在尝试制作一个带有广告的消息应用程序,当应用程序在实现AdMob时崩溃。不知道为什么应用程序会崩溃,但我怀疑可能与其他现有代码冲突。下面的代码有什么问题吗 爪哇: 日志类别: 致命异常:主 流程:comdanishansogning.wixsite.httpshobojuniors.danishansgning,PID:3879 java.lang.RuntimeException:无法启动活动组件信息{comdanishansogning.wixsite.httpshobojuniors
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<activity android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:theme="@android:style/Theme.Translucent" />
Xml:
请检查您是否在清单文件中定义了活动。
如评论中所述,您正在膨胀错误的XML布局文件。在代码中:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
...
}
您正在膨胀文件res/layout/activity\u main.xml
。要充气res/layout/activity\u register.xml
,请将setContentView
更改为:
setContentView(R.layout.activity_register);
对于第二个问题,您的布局中没有定义RecyclerView
。添加一个
<android.support.v7.widget.RecyclerView
android:id="@+id/messageRec"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
你能发布activity\u main.xml
吗?这里的activity\u main.xml可能是重复的,我使用另一个activity而不是activity\u main,这会造成问题吗?你能添加它吗?如果Pastebin出现故障,那么这个问题在将来对其他人没有用处。我也不太确定NullPointerException,但是问题可能在于AdMob的实施。。。有了新的更新,我不确定我是否正确地编写了代码该活动可能已经在清单中定义,因为活动进程使其通过了super.onCreate()
。当引用adView
时,它是一个NullPointerException
,因此R.id.adView
不存在于R.layout.activity\u main
中。需要等待OP澄清细节。是的,我确实定义了活动,但没有包括在内。我确实查看了《快速入门指南》,尽管结果仍然一样……主要问题是您的项目无法获取活动上下文。@HiteshManwani问题是OP扩大了错误的布局。请参阅上面我的答案。我尝试使用您建议的编辑来扩展正确的XML布局文件,但是由于尝试调用虚拟方法void android.support.v7.widget.RecyclerView.setHasFixedSize(布尔值),应用程序仍然崩溃'在空对象上reference@JoshuaLee这是因为您没有在上面发布的XML布局文件中定义ID为@+ID/messageRec
的RecyclerView
。对不起,我不太明白你的意思,你能在你的答案中修改一下吗?定义recycler视图与此有何关系?我已经用一个示例更新了我的答案RecyclerView
。如果你还有其他问题,我建议你问一个新问题,这样这个问题就不会偏离原来的目的太远。添加“回收者”视图后,应用程序不再崩溃,但不会显示广告。这是因为另一个问题吗?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
...
}
setContentView(R.layout.activity_register);
<android.support.v7.widget.RecyclerView
android:id="@+id/messageRec"
android:layout_width="match_parent"
android:layout_height="match_parent"/>