【问题标题】:Android Crash, java.lang.IllegalArgumentException: Window type can not be changed after the window is addedAndroid Crash, java.lang.IllegalArgumentException: 添加窗口后无法更改窗口类型
【发布时间】:2013-06-11 14:42:50
【问题描述】:

我向市场上传了一个 Android 应用程序,但由于某种原因,用户收到此错误。

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)

我很确定我从不使用其他帖子中提到的WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG。但是,我确实有一个在WindowManager.LayoutParams.TYPE_PHONEWindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY 之间切换的窗口。这似乎是错误。我宁愿不改变它,因为它需要我有两个窗口而不是一个。提前致谢!

【问题讨论】:

    标签: android android-windowmanager


    【解决方案1】:

    查看AndroidManifest.xml

    <uses-sdk  //************
                android:targetSdkVersion="X"/>
    

    X 必须小于 14 或删除此属性。 祝你好运。

    【讨论】:

    • 你怎么知道的?
    • Albert Qing 这不是解决方案。如何使它适用于最新的 API
    • 很多情况都可能导致这个问题,这只是一种选择,不是绝对的!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多