Ho caricato sul mercato un'applicazione Android e, per qualche motivo, un utente riceve questo errore.Android Crash, java.lang.IllegalArgumentException: il tipo di finestra non può essere modificato dopo l'aggiunta della finestra
java.lang.IllegalArgumentException: Window type can not be changed after the window is added.
at android.os.Parcel.readException(Parcel.java:1331)
at android.os.Parcel.readException(Parcel.java:1281)
at android.view.IWindowSession$Stub$Proxy.relayout(IWindowSession.java:664)
at android.view.ViewRootImpl.relayoutWindow(ViewRootImpl.java:3594)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1193)
at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2450)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4444)
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:787)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:554)
at dalvik.system.NativeStart.main(Native Method)
Io sono abbastanza sicuro che non uso mai WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG
come riferimento in altri messaggi. Tuttavia, ho una finestra che cambia tra WindowManager.LayoutParams.TYPE_PHONE
e WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY
. Sembra che potrebbe essere l'errore. Preferirei non cambiarlo perché richiederebbe due finestre invece di una sola. Grazie in anticipo!
Come lo sapevi? –
Albert Qing questa non è la soluzione. Come farlo funzionare per l'ultima API – Nepster
Molte condizioni possono causare questo problema, questa è solo una scelta, non assoluta! –