4

我正在使用MediaPlayer和MediaController對象來流式傳輸音頻。關閉活動時,我得到一個窗口泄漏異常。Android - MediaController泄露活動

我在我的活動中沒有任何幫助的以下內容。

@Override 
protected void onStop() { 
    super.onStop(); 
    mediaController.hide(); 

} 

我碰到下面的堆棧跟蹤:

01-24 20:11:18.317:E /窗口管理器(26286):活動 co.uk.ing_simmons.aberdeensoundsites.RecordingDetails已泄漏 window [email protected] 原來是在這裏添加的01-24 20:11:18.317: E/WindowManager(26286):android.view.WindowLeaked:Activity co.uk .ing_simmons.aberdeensoundsites.RecordingDetails已泄露 window com.android.i [email protected] 最初在這裏添加01-24 20:11:18.317: E/WindowManager(26286):在 android.view.ViewRootImpl。(ViewRootImpl.java:418)01 -24 20:11:18.317:E/WindowManager(26286):在 android.view.WindowManagerImpl.addView(WindowManagerImpl.java:294) 01-24 20:11:18.317:E/WindowManager(26286):at (WindowsManagerImpl.java:151)012.JPG.WindowManagerImpl.addView(WindowManagerImpl.java:226) 01-24 20:11:18.317:E/WindowManager(26286):at android.view.WindowManagerImpl $ CompatModeWrapper.addView(WindowManagerImpl.java:151) 01-24 20:11:18.317:E/WindowManager(26286):在 android.view.Window $ LocalWindowManager.addView(Window.java:54 7)01-24 20:11:18.317:E/WindowManager(26286):在 android.widget.MediaController.show(MediaController.java:470)01-24 20:11:18.317:E/WindowManager(26286) ):at android.widget.MediaController.show(MediaController.java:429)01-24 20:11:18.317:E/WindowManager(26286):at co.uk.ing_simmons.aberdeensoundsites.RecordingDetails $ 2.run( RecordingDetails.java:202) 01-24 20:11:18.317:E/WindowManager(26286):at android.os.Handler.handleCallback(Handler.java:615)01-24 20:11:18.317:E/WindowManager(26286):at android.os.Handler.dispatchMessage(Handler.java:92)01-24 20:11:18.317:E/WindowManager(26286):at android.os。 Looper.loop(Looper.java:153)01-24 20:11:18.317: E/WindowManager(26286):at android.app.ActivityThread.main(ActivityThread.java:5006)01-24 20:11 :18.317:E/WindowManager(26286):在 java.lang.reflect.Method.invokeNative(Native Method)01-24 20:11:18.317:E/WindowManager(26286):位於 java.lang.reflect。 Method.invoke(Method.java:511)01-24 20:11:18.317: E/WindowManager(26286):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:821) 01-24 20:11:18.317:E/WindowManager(26286):在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)01-24 20:11:18.317:E/WindowManager 26286):在 d alvik.system.NativeStart.main(Native Method)01-24 20:11:18.325: E/InputEventReceiver(26286):channel'41c81858 面板:co.uk.ing_simmons.aberdeensoundsites/co.uk.ing_simmons.aberdeensoundsites。 RecordingDetails (客戶端)'〜發佈者關閉輸入通道或發生錯誤。 事件= 0x9

這似乎點到線202這是這一行:

mediaController.show(); 

我一直在谷歌搜索這幾個小時,所有的一切說把「mediaController.hide()」在onStop方法中防止泄漏。這顯然不工作,因此任何幫助或指導將不勝感激。

感謝

回答

1

你可能想行

super.onStop(); 
mediaController.hide(); 

反向

mediaController.hide(); 
super.onStop(); 
+6

不工作。我仍然收到「有泄漏窗口」的錯誤。 – Alexey