2013-06-29 33 views
0

的Android应用程序,它播放的声音,当我想从应用程序中当按下移动注销按钮我有错误消息“的注销应用程序停止...“。错误的应用程序停止时,按移动注销按钮

@Override 
protected void onStop() { 

     super.onStop(); 

    if(mp.isPlaying()) 
     mp.stop(); 
     mp.release(); 
     finish(); 
     } 


@Override 
public void onBackPressed() { 
    // TODO Auto-generated method stub 
    super.onBackPressed(); 


    if(mp!=null) 
    { 


     if(mp.isPlaying()) 

     mp.stop(); 
     mp.release(); 


    } 
    finish(); 

} 

06-30 00:09:48.403:I /指导(678):跳过106帧!应用程序可能在其主线程上做了太多工作。 06-30 00:09:48.452:D/gralloc_goldfish(678):未检测到GPU仿真的仿真器。 06-30 00:09:49.761:I /编舞师(678):跳过135帧!应用程序可能在其主线程上做了太多工作。 06-30 00:09:51.331:D/dalvikvm(678):GC_CONCURRENT释放了82K,2%空闲8378K/8519K,暂停123ms + 21ms,总计278ms 00:10:18.202:W/IInputConnectionWrapper ):showStatusIcon on inactive InputConnection 06-30 00:10:19.042:D/AndroidRuntime(678):关闭VM 06-30 00:10:19.042:W/dalvikvm(678):threadid = 1:线程退出未知的异常(组= 0x40a13300) 06-30 00:10:19.211:E/AndroidRuntime(678):致命异常:主要 06-30 00:10:19.211:E/AndroidRuntime(678):android.app.SuperNotCalledException :Activity {com.ramadan/com.ramadan.Ramadan}没有通过调用super.onStop() 06-30 00:10:19.211:E/AndroidRuntime(678):at android.app.Activity.performStop(Activity .java:5148) 06-30 00:10:19.211:E/AndroidRuntime(678):在android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3232) 06-30 00:10:19.211:E/AndroidRuntime(678):at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3291) 06- 30 00:10:19.211:E/AndroidRuntime(678):at android.app.ActivityThread.access $ 1200(ActivityThread.java:130) 06-30 00:10:19.211:E/AndroidRuntime(678):at android。 app.ActivityThread $ H.handleMessage(ActivityThread.java:1248) 06-30 00:10:19.211:E/AndroidRuntime(678):at android.os.Handler.dispatchMessage(Handler.java:99) 06-30 00:10:19.211:E/AndroidRuntime(678):at android.os.Looper.loop(Looper.java:137) 06-30 00:10:19.211:E/AndroidRuntime(678):at android.app。 ActivityThread.main(ActivityThread.java:4745) 06-30 00:10:19.211:E/AndroidRuntime(678):at java.lang.reflec t.Method.invokeNative(Native Method) 06-30 00:10:19.211:E/AndroidRuntime(678):at java.lang.reflect.Method.invoke(Method.java:511) 06-30 00:10 :19.211:E/AndroidRuntime(678):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:786) 06-30 00:10:19.211:E/AndroidRuntime(678):at com .android.internal.os.ZygoteInit.main(ZygoteInit.java:553) 06-30 00:10:19.211:E/AndroidRuntime(678):在dalvik.system.NativeStart.main(本机方法)

+0

每当开发人员看到“应用程序停止...”时,应该将其视为“在Logcat中查找”。Logcat将为您提供应用程序崩溃的细节,甚至是哪条线路导致崩溃。如果你使用Eclipse,那么去'窗口 - >显示视图 - >其他 - > LogCat'来添加它。 –

回答

1

它在onStop()中抛出SuperNotCalledException这意味着你没有拨打super.onStop()

@Override 
public void onStop(){ 
    super.onStop(); // must be called. 
} 

活动lify周期中的每个方法,如onCreate()onResume()onStart()等都应调用super方法。

+0

y didnot我的问题,我补充super.onStop();在我的代码 – Egydeveloper

+0

当我修改代码保护无效onStop(){super.onStop(); if(mp!= null) { if(mp.isPlaying()) mp.stop(); mp.release(); finish(); }声音不停止 – Egydeveloper

+0

我编辑我的问题与新的logcat – Egydeveloper