报错文件:
android.view.WindowLeaked: Activity com.gdvictor.dbconductorcenter.activity.ShortVideoPlayActivity has leaked window DecorView@9f2ea24[] that was originally added here
at android.view.ViewRootImpl.<init>(ViewRootImpl.java:428)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:337)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:94)
at android.app.Dialog.show(Dialog.java:332)
at com.gdvictor.dbconductorcenter.base.BaseActivity.getChoiceDialog(BaseActivity.java:151)
at com.gdvictor.dbconductorcenter.base.BaseActivity.callTk02CammandCenter(BaseActivity.java:78)
at com.gdvictor.dbconductorcenter.app.App$1.setTk02CallMessage(App.java:86)
at com.gdvictor.dbconductorcenter.app.APP_RxJava$1.accept(APP_RxJava.java:50)
at com.gdvictor.dbconductorcenter.app.APP_RxJava$1.accept(APP_RxJava.java:47)
at io.reactivex.internal.subscribers.LambdaSubscriber.onNext(LambdaSubscriber.java:61)
at io.reactivex.internal.operators.flowable.FlowableMap$MapSubscriber.onNext(FlowableMap.java:67)
at io.reactivex.internal.operators.flowable.FlowableFilter$FilterSubscriber.tryOnNext(FlowableFilter.java:72)
at io.reactivex.internal.operators.flowable.FlowableFilter$FilterSubscriber.onNext(FlowableFilter.java:50)
at io.reactivex.processors.PublishProcessor$PublishSubscription.onNext(PublishProcessor.java:281)
at io.reactivex.processors.PublishProcessor.onNext(PublishProcessor.java:196)
at io.reactivex.processors.SerializedProcessor.onNext(SerializedProcessor.java:102)
at com.gdvictor.dbconductorcenter.unti.rxbus.RxBus.post(RxBus.java:30)
at com.gdvictor.dbconductorcenter.unti.rxbus.RxbusPublisher.setTk02CallMessage(RxbusPublisher.java:29)
at com.gdvictor.dbconductorcenter.unti.socket.RTCSocket$1.onTextMessage(RTCSocket.java:174)
at io.crossbar.autobahn.websocket.WebSocketConnection$2.handleMessage(WebSocketConnection.java:421)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:163)
at android.app.ActivityThread.main(ActivityThread.java:6377)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794)
解决方案: 在Dsetroy 中判断销毁dialog。
@Override protected void onDestroy() { super.onDestroy(); if(dialog != null){ dialog.dismiss(); } }