Код: Выделить всё
package io.github.yamin8000.owl.ui.content.widget
import android.content.Context
import androidx.compose.runtime.Composable
import androidx.compose.ui.tooling.preview.Preview
import androidx.glance.GlanceId
import androidx.glance.GlanceTheme
import androidx.glance.appwidget.GlanceAppWidget
import androidx.glance.appwidget.provideContent
import androidx.glance.text.Text
internal class Widget : GlanceAppWidget() {
override suspend fun provideGlance(context: Context, id: GlanceId) {
provideContent {
GlanceTheme {
WidgetContent()
}
}
}
@Preview
@Composable
fun WidgetContent() {
Text("Some Text!")
}
}
В этой предварительной версии не удалось найти CompositionLocal. Возможно, вам придется определить его, чтобы он мог правильно отображаться.
И вот трассировка стека, которую я получаю: (Widget.kt:45 — это Text("Some Text!") )
Код: Выделить всё
java.lang.IllegalStateException: I n v a l i d a p p l i e r < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . C o m p o s a b l e s K t . i n v a l i d A p p l i e r ( C o m p o s a b l e s . k t : 4 7 2 ) < b r / > a t a n d r o i d x . g l a n c e . t e x t . T e x t K t . T e x t ( T e x t . k t : 8 1 ) < b r / > a t i o . g i t h u b . y a m i n 8 0 0 0 . o w l . u i . c o n t e n t . w i d g e t . W i d g e t . W i d g e t C o n t e n t ( W i d g e t . k t : 4 5 ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e 0 ( N a t i v e M e t h o d ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . r e f l e c t . N a t i v e M e t h o d A c c e s s o r I m p l . i n v o k e ( N a t i v e M e t h o d A c c e s s o r I m p l . j a v a : 7 7 ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . r e f l e c t . D e l e g a t i n g M e t h o d A c c e s s o r I m p l . i n v o k e ( D e l e g a t i n g M e t h o d A c c e s s o r I m p l . j a v a : 4 3 ) < b r / > a t j a v a . b a s e / j a v a . l a n g . r e f l e c t . M e t h o d . i n v o k e ( M e t h o d . j a v a : 5 6 8 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s a b l e I n v o k e r . i n v o k e C o m p o s a b l e M e t h o d ( C o m p o s a b l e I n v o k e r . j v m . k t : 1 8 1 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s a b l e I n v o k e r . i n v o k e C o m p o s a b l e ( C o m p o s a b l e I n v o k e r . j v m . k t : 2 2 6 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r $ i n i t $ 3 $ 1 $ c o m p o s a b l e $ 1 . i n v o k e ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 5 0 4 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r $ i n i t $ 3 $ 1 $ c o m p o s a b l e $ 1 . i n v o k e ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 5 0 2 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r $ i n i t $ 3 $ 1 . i n v o k e ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 5 3 9 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r $ i n i t $ 3 $ 1 . i n v o k e ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 4 9 7 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . i n t e r n a l . C o m p o s a b l e L a m b d a I m p l . i n v o k e ( C o m p o s a b l e L a m b d a . j v m . k t : 1 0 9 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . i n t e r n a l . C o m p o s a b l e L a m b d a I m p l . i n v o k e ( C o m p o s a b l e L a m b d a . j v m . k t : 3 5 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . C o m p o s i t i o n L o c a l K t . C o m p o s i t i o n L o c a l P r o v i d e r ( C o m p o s i t i o n L o c a l . k t : 2 2 8 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . I n s p e c t a b l e K t . I n s p e c t a b l e ( I n s p e c t a b l e . a n d r o i d . k t : 6 1 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r $ W r a p P r e v i e w $ 1 . i n v o k e ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 4 4 4 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r $ W r a p P r e v i e w $ 1 . i n v o k e ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 4 4 3 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . i n t e r n a l . C o m p o s a b l e L a m b d a I m p l . i n v o k e ( C o m p o s a b l e L a m b d a . j v m . k t : 1 0 9 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . i n t e r n a l . C o m p o s a b l e L a m b d a I m p l . i n v o k e ( C o m p o s a b l e L a m b d a . j v m . k t : 3 5 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . C o m p o s i t i o n L o c a l K t . C o m p o s i t i o n L o c a l P r o v i d e r ( C o m p o s i t i o n L o c a l . k t : 2 2 8 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r . W r a p P r e v i e w ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 4 3 8 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r . a c c e s s $ W r a p P r e v i e w ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 1 2 4 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r $ i n i t $ 3 . i n v o k e ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 4 9 7 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . t o o l i n g . C o m p o s e V i e w A d a p t e r $ i n i t $ 3 . i n v o k e ( C o m p o s e V i e w A d a p t e r . a n d r o i d . k t : 4 9 4 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . i n t e r n a l . C o m p o s a b l e L a m b d a I m p l . i n v o k e ( C o m p o s a b l e L a m b d a . j v m . k t : 1 0 9 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . i n t e r n a l . C o m p o s a b l e L a m b d a I m p l . i n v o k e ( C o m p o s a b l e L a m b d a . j v m . k t : 3 5 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . p l a t f o r m . C o m p o s e V i e w . C o n t e n t ( C o m p o s e V i e w . a n d r o i d . k t : 4 2 8 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . p l a t f o r m . A b s t r a c t C o m p o s e V i e w $ e n s u r e C o m p o s i t i o n C r e a t e d $ 1 . i n v o k e ( C o m p o s e V i e w . a n d r o i d . k t : 2 5 2 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . p l a t f o r m . A b s t r a c t C o m p o s e V i e w $ e n s u r e C o m p o s i t i o n C r e a t e d $ 1 . i n v o k e ( C o m p o s e V i e w . a n d r o i d . k t : 2 5 1 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . i n t e r n a l . C o m p o s a b l e L a m b d a I m p l . i n v o k e ( C o m p o s a b l e L a m b d a . j v m . k t : 1 0 9 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . i n t e r n a l . C o m p o s a b l e L a m b d a I m p l . i n v o k e ( C o m p o s a b l e L a m b d a . j v m . k t : 3 5 ) < b r / > a t a n d r o i d x . c o m p o s e . r u n t i m e . C o m p o s i t i o n L o c a l K t . C o m p o s i t i o n L o c a l P r o v i d e r ( C o m p o s i t i o n L o c a l . k t : 2 2 8 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . p l a t f o r m . C o m p o s i t i o n L o c a l s K t . P r o v i d e C o m m o n C o m p o s i t i o n L o c a l s ( C o m p o s i t i o n L o c a l s . k t : 1 8 6 ) < b r / > a t a n d r o i d x . c o m p o s e . u i . p l a t f o r m . A n d r o i d C o m p o s i t i o n L o c a l s _ a n d r o i d K t $ P r o v i d e A n d r o i d C o m p o s i t i o n L o c a l s $ 3 . i n v o k e ( A n d r o i dCompositionLocals.android.kt:119)
at androidx.compose.ui.platform.AndroidCompositionLocals_androidKt$ProvideAndroidCompositionLocals$3.invoke(AndroidCompositionLocals.android.kt:118)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:228)
at androidx.compose.ui.platform.AndroidCompositionLocals_androidKt.ProvideAndroidCompositionLocals(AndroidCompositionLocals.android.kt:110)
at androidx.compose.ui.platform.WrappedComposition$setContent$1$1$2.invoke(Wrapper.android.kt:139)
at androidx.compose.ui.platform.WrappedComposition$setContent$1$1$2.invoke(Wrapper.android.kt:138)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:248)
at androidx.compose.ui.platform.WrappedComposition$setContent$1$1.invoke(Wrapper.android.kt:138)
at androidx.compose.ui.platform.WrappedComposition$setContent$1$1.invoke(Wrapper.android.kt:123)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.ActualJvm_jvmKt.invokeComposable(ActualJvm.jvm.kt:90)
at androidx.compose.runtime.ComposerImpl.doCompose(Composer.kt:3302)
at androidx.compose.runtime.ComposerImpl.composeContent$runtime_release(Composer.kt:3235)
at androidx.compose.runtime.CompositionImpl.composeContent(Composition.kt:725)
at androidx.compose.runtime.Recomposer.composeInitial$runtime_release(Recomposer.kt:1071)
at androidx.compose.runtime.CompositionImpl.composeInitial(Composition.kt:633)
at androidx.compose.runtime.CompositionImpl.setContent(Composition.kt:619)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:123)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:114)
at androidx.compose.ui.platform.AndroidComposeView.setOnViewTreeOwnersAvailable(AndroidComposeView.android.kt:1289)
at androidx.compose.ui.platform.WrappedComposition.setContent(Wrapper.android.kt:114)
at androidx.compose.ui.platform.WrappedComposition.onStateChanged(Wrapper.android.kt:164)
at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.jvm.kt:320)
at androidx.lifecycle.LifecycleRegistry.addObserver(LifecycleRegistry.jvm.kt:198)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:121)
at androidx.compose.ui.platform.WrappedComposition$setContent$1.invoke(Wrapper.android.kt:114)
at androidx.compose.ui.platform.AndroidComposeView.onAttachedToWindow(AndroidComposeView.android.kt:1364)
at android.view.View.dispatchAttachedToWindow(View.java:21980)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3490)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:3497)
at android.view.AttachInfo_Accessor.setAttachInfo(AttachInfo_Accessor.java:44)
at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:372)
at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:454)
at com.android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.java:120)
at com.android.tools.rendering.RenderTask.createRenderSession(RenderTask.java:775)
at com.android.tools.rendering.RenderTask.lambda$inflate$6(RenderTask.java:923)
at com.android.tools.rendering.RenderExecutor$runAsyncActionWithTimeout$3.run(RenderExecutor.kt:202)
at com.android.tools.rendering.RenderExecutor$PriorityRunnable.run(RenderExecutor.kt:316)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
Код: Выделить всё
Android Studio Jellyfish | 2023.3.1 Patch 1
Build #AI-233.14808.21.2331.11842104, built on May 15, 2024
Runtime version: 17.0.10+0--11572160 amd64
Подробнее здесь: https://stackoverflow.com/questions/785 ... ition-loca
Мобильная версия