gpt4 book ai didi

android - 空指针异常

转载 作者:太空狗 更新时间:2023-10-29 12:49:44 25 4
gpt4 key购买 nike

我发布了一个免费的应用图片 slider ,其中包含适合 child 子的口语。几周前,我收到了第一份崩溃报告。这似乎很少发生(每周一次)。

报告指出:Splash.onCreate() 中出现 NullPointerException

堆栈显示此消息:

java.lang.RuntimeException: Unable to start activity 
java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
at android.app.ActivityThread.access$600(ActivityThread.java:130)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4745)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at co.uk.musenuovo.michal.Splash.onCreate(Splash.java:18)
at android.app.Activity.performCreate(Activity.java:5008)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)

我在 spash Activity 中的代码(初始屏幕显示图像并播放音乐 5 秒):

import android.app.Activity;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;

public class Splash extends Activity {

MediaPlayer ourSong;

@Override
protected void onCreate(Bundle ShowSplashPage) {
// TODO Auto-generated method stub
super.onCreate(ShowSplashPage);
setContentView(R.layout.splash);
ourSong = MediaPlayer.create(Splash.this, R.raw.xylophone_open);
ourSong.start();
Thread timer = new Thread() {

public void run() {
try{
sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
} finally {
Intent openStartingPoint = new Intent("co.uk.musenuovo.michal.STARTINGPOINT");
startActivity(openStartingPoint);

}
}

};
timer.start();

}

@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
ourSong.release();
finish();
}

}

该错误清楚地指向 spash Activity 中的 onstart。这是因为我忘记导入一些库了吗?或者我忘了分配什么?我是 java 的新手,不知道如何调试和找出问题所在。我读了很多关于 NullPointerException 的文章,但这似乎是一个错误的含糊不清的问题。感谢您的所有帮助。

最佳答案

可能是 ourSong 变量为 null..使用前需要检查

ourSong  = MediaPlayer.create(Splash.this, R.raw.xylophone_open);

if(ourSong == null) {
Log.v("LOG", "Create() on MediaPlayer failed.");
}

关于android - 空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13584482/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com