我可以使用撰写预览,但在一些库更新后,我不能再使用它了。如何解决这个错误?
java.lang.NoClassDefFoundError: android/os/ext/SdkExtensions
at androidx.core.os.BuildCompat$Extensions30Impl.<clinit>(BuildCompat.java:302)
at androidx.core.os.BuildCompat.<clinit>(BuildCompat.java:256)
at androidx.compose.ui.text.android.BoringLayoutFactory.measure(BoringLayoutFactory.kt:49)
at androidx.compose.ui.text.android.LayoutIntrinsics.getBoringMetrics(LayoutIntrinsics.kt:55)
at androidx.compose.ui.text.android.LayoutIntrinsics.getMaxIntrinsicWidth(LayoutIntrinsics.kt:82)
at androidx.compose.ui.text.platform.AndroidParagraphIntrinsics.getMaxIntrinsicWidth(AndroidParagraphIntrinsics.android.kt:64)
at androidx.compose.ui.text.MultiParagraphIntrinsics$maxIntrinsicWidth$2.invoke(MultiParagraphIntrinsics.kt:82)
at androidx.compose.ui.text.MultiParagraphIntrinsics$maxIntrinsicWidth$2.invoke(MultiParagraphIntrinsics.kt:80)
at _layoutlib_._internal_.kotlin.UnsafeLazyImpl.getValue(Lazy.kt:81)
at androidx.compose.ui.text.MultiParagraphIntrinsics.getMaxIntrinsicWidth(MultiParagraphIntrinsics.kt:80)
at androidx.compose.foundation.text.TextDelegate.getMaxIntrinsicWidth(TextDelegate.kt:121)
at androidx.compose.foundation.text.TextDelegate.layoutText-K40F9xA(TextDelegate.kt:200)
at androidx.compose.foundation.text.TextDelegate.layout-NN6Ew-U(TextDelegate.kt:248)
at androidx.compose.foundation.text.TextController$measurePolicy$1.measure-3p2s80s(CoreText.kt:306)
at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:106)
at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier.measure-3p2s80s(GraphicsLayerModifier.kt:649)
......
我在更新androidx后遇到了同样的问题。Core: Core -ktx库,从1.9.0到1.10.0。返回到1.9.0后,预览再次渲染。
查看1.10.0的发布说明,对SdkExtensions (Pull request)进行了更新。
对于我来说,截至2023年5月15日,我刚刚将我的'androidx.compose.ui:ui:1.5.0-alpha02'
升级到'androidx.compose.ui:ui:1.5.0-alpha04'
,并且解决了预览错误。
顺便说一句,我没有降级或升级我的'androidx.core:core-ktx:1.10.0'
,虽然它可以升级到1.10.1,但不要做任何升级。
我没有尝试将'androidx.core:core-ktx:1.10.0'
降级到1.9.0。我想升级到'androidx.compose.ui:ui:1.5.0-alpha04'
更适合我。