升级Compose等版本后出现PreviewActivity不是Activity子类错误如何解决
解决方法
该报错是Compose 1.0.0-rc01+版本调整预览组件逻辑后,和AGP 7.1.0-alpha04版本存在兼容冲突导致的,可按以下步骤处理:
方案1:升级匹配版本(推荐)
- 将Android Gradle 插件版本从7.1.0-alpha04升级至7.1.0-alpha05及以上,该版本已经修复了和Compose rc版本的预览组件兼容问题
- 确认项目中所有Compose相关依赖的版本,和
kotlinCompilerExtensionVersion完全一致,避免版本混用
方案2:临时手动注册Activity(无需升级AGP)
如果暂时不想调整AGP版本,可直接在app模块的AndroidManifest.xml中手动添加PreviewActivity声明:
<activity android:name="androidx.compose.ui.tooling.preview.PreviewActivity" android:exported="false" />
最后清理缓存
- 执行Android Studio 菜单栏
File -> Invalidate Caches / Restart清理IDE缓存 - 命令行执行
./gradlew clean清理项目构建缓存,重新构建运行即可
注:你当前使用的Kotlin 1.5.21版本和Compose 1.0.0-rc02版本是匹配的,无需调整Kotlin版本
内容的提问来源于stack exchange,提问作者Sparsh Dutta
相关产品推荐
相关产品推荐

