【发布时间】:2014-03-27 21:09:36
【问题描述】:
我用 libGDX 开发了一个 Android 应用程序并添加了 Admob,但是当我在 Android 上打开 APK 时它崩溃了,说明进程已停止。
这是我在 Android 项目中的代码。
public class MainActivity extends AndroidApplication{
protected AdView adview;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.useGL20 = true;
final TelephonyManager tm =(TelephonyManager)getBaseContext().getSystemService(Context.TELEPHONY_SERVICE);
String deviceid = tm.getDeviceId();
RelativeLayout layout = new RelativeLayout(this);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
setContentView(graphics.getView(), createLayoutParams());
View gameview = initializeForView(new BalloonBreakout(), false);
adview = new AdView(this);
adview.setAdSize(AdSize.BANNER);
adview.setAdUnitId("ca-app-pub-6258330641042393/6188790266");
adview.loadAd(new AdRequest.Builder().addTestDevice(deviceid).build());
RelativeLayout.LayoutParams adparams = new RelativeLayout.LayoutParams(Gdx.graphics.getWidth(), Gdx.graphics.getHeight() / 14);
adparams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
adparams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
layout.addView(gameview);
layout.addView(adview, adparams);
setContentView(layout);
}
}
我不确定它为什么会崩溃,任何帮助将不胜感激。
更新:
我这里有错误日志,但我不知道为什么我得到一个空指针。
E( 3875) Caused by: java.lang.NullPointerException (AndroidRuntime)
E( 3875) at com.sevenbit.Balloon_Breakout.MainActivity.onCreate(MainActivity.java:37)(AndroidRuntime)
第 37 行是:
setContentView(graphics.getView(), createLayoutParams());
但是当我删除这一行时,我仍然在同一个地方得到一个空指针,第 37 行。
有什么想法吗?
【问题讨论】:
-
请发布整个异常堆栈跟踪,包括“Caused by:”部分。这很重要。此外,您可以在此处复制/粘贴它,而不是为您的屏幕拍照。只需在每行前使用 4 个空格来制作代码块。
标签: android crash libgdx admob