我正在开发一个媒体文件应用程序,旨在播放存储在我的原始文件夹中的声音。总共有大约 32 种声音。这就是我在单击每个按钮时所做的事情:
Button btnGrowUp = (Button) this.findViewById(R.id.GrowUp);
btnGrowUp.setOnClickListener(btnGrowUpListener);
private OnClickListener btnGrowUpListener = new OnClickListener()
{
public void onClick(View v)
{
//Toast.makeText(getBaseContext(), "Grow Up audio file is being played", Toast.LENGTH_SHORT).show();
MediaPlayer mp = MediaPlayer.create(MainScreen.this, R.raw.growup);
mp.start();
}
};
我收到一个运行时异常,说“应用程序意外停止”,并在我的 logcat 窗口中显示以下消息:
12-19 12:33:05.420: WARN/dalvikvm(699): threadid=3: 线程退出 有未捕获的异常(组=0x4000fe70) 12-19 12:33:05.441:错误/AndroidRuntime(699):未捕获的处理程序: 由于未捕获的异常,线程主退出 12-19 12:33:05.460: 错误/AndroidRuntime(699): java.lang.NullPointerException 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 com.myapps.media.MainScreen$8.onClick(MainScreen.java:244) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.view.View.performClick(View.java:2179) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.view.View.onTouchEvent(View.java:3828) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.widget.TextView.onTouchEvent(TextView.java:6291) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.view.View.dispatchTouchEvent(View.java:3368) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:863) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 com.android.internal.policy.impl.PhoneWindow $DecorView.superDispatchTouchEvent(PhoneWindow.java:1707) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent (PhoneWindow.java:1197) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.app.Activity.dispatchTouchEvent(Activity.java:1993) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 com.android.internal.policy.impl.PhoneWindow $DecorView.dispatchTouchEvent(PhoneWindow.java:1691) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.view.ViewRoot.handleMessage(ViewRoot.java:1525) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.os.Handler.dispatchMessage(Handler.java:99) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.os.Looper.loop(Looper.java:123) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 android.app.ActivityThread.main(ActivityThread.java:3948) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 java.lang.reflect.Method.invokeNative(Native Method) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 java.lang.reflect.Method.invoke(Method.java:521) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:782) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540) 12-19 12:33:05.460: 错误/AndroidRuntime(699): 在 dalvik.system.NativeStart.main(本机方法) 12-19 12:33:05.520:INFO/Process(563):发送信号。PID:699 SIG:3 12-19 12:33:05.520: INFO/dalvikvm(699): threadid=7: 对信号做出反应 3 12-19 12:33:05.601: INFO/dalvikvm(699): 将堆栈跟踪写入'/data/ anr/traces.txt' 12-19 12:33:05.982: 信息/ARMAssembler(563): 生成 扫描线__00000077:03515104_00000000_00000000 [27 ipp](41 英寸)在 [0x27c718:0x27c7bc] 在 982527 ns 12-19 12:33:06.011: 信息/ARMAssembler(563): 生成 扫描线__00000077:03515104_00001001_00000000 [64 ipp](84 英寸)在 [0x27c7c0:0x27c910] 在 1804978 ns
如何解决这个问题?谢谢
马克苏德