# 【Android】Jetpack Compose 环境配置 站点:答源(https://www.dandroid.cn/) 原文:https://www.dandroid.cn/archives/19758 Canonical:https://www.dandroid.cn/archives/19758 作者:admin 发布日期:2023-09-10 最后更新:2023-09-10 06:13 分类:compose / Jetpack组件 内容类型:post 说明:本页是原文的纯文本镜像,供大模型与检索器完整读取;不含导航、广告、付费框。引用请以上方「原文」链接为准。 ## 正文 Android开发配置Jetpack Compose环境踩坑笔记​ 根目录 build.gradle 配置kotlin环境构建脚本 buildscript { ext.kotlin_version = '1.4.32' dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } 注意:里面的kotlin版本需要和自己的 gradle 版本 对应的Compose Complier版本适配,如果不适配,build时会提示适配版本,然后改为相应版本即可 提醒 plugins { id 'com.android.application' version '7.1.2' apply false id 'com.android.library' version '7.1.2' apply false } apply false 意味着这些插件不会被应用到当前项目中。但是,这里为这些插件指定版本号是有用的,因为在子项目中应用这些插件时,Gradle 将会根据指定的版本号下载和使用相应的插件。如果不指定版本号,Gradle 将会默认使用最新版本的插件,这可能会导致不可预期的问题。 app 子模块 build.gradle 中添加 apply plugin: 'kotlin-android' 这里面会指定添加插件kotlin-android的最新版本,但是没有指定版本可能会造成错误 说明 plugins { id 'com.android.application' } apply plugin: 'kotlin-android' plugins { id 'com.android.application' id 'org.jetbrains.kotlin.android' } 上面两种写法是影响作用相同,但是推荐使用第一种,因为它更加清晰和简洁,同时也便于维护和修改。第二种方式虽然也能实现同样的功能,但是需要指定更多的插件,并且代码看起来比较冗长。 Q:但是为什么使用apply时为什么没有指定”org.jetbrains“,这不会造成错误吗 在使用 apply plugin 声明插件时,通常可以省略掉插件 ID 中的 org.jetbrains,因为 Gradle 默认会搜索 gradle.plugin.org.jetbrains 命名空间下的插件,所以使用 id 'kotlin-android' 或 id 'org.jetbrains.kotlin.android' 都是可以的,因为 Gradle 会将它们都解析成 gradle.plugin.org.jetbrains.kotlin.android。 实际上,Gradle 支持三种插件 ID 声明方式:id 'pluginId'、id 'namespace:pluginId' 和 id "namespace:pluginId" version "version"。其中第一种方式会自动搜索 gradle.plugin 和 org.gradle.plugin 命名空间下的插件,所以可以省略命名空间。 开启 Compose android { buildFeatures { setCompose(true) } } 导入依赖 dependencies { def compose_version = "1.0.4" implementation "androidx.compose.ui:ui:$compose_version" implementation "androidx.compose.material:material:$compose_version" implementation "androidx.compose.ui:ui-tooling-preview:$compose_version" implementation "androidx.activity:activity-compose:1.3.0" } 里面的1.0.4版本也需要试着看 若是需要使用@Preview还需添加 implementation "androidx.compose.ui:ui-tooling:$compose_version" MainActivity.kt package io.github.returntmp.dpfk import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.material.Text import androidx.compose.runtime.Composable import androidx.compose.ui.tooling.preview.Preview class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { // Text("Hello world!") MessageCard("Android") } } } @Composable fun MessageCard(name: String) { Text(text = "Hello $name!") } @Preview @Composable fun PreviewMessageCard() { MessageCard("Android") } manifest.xml 添加启动activity配置 <activity android:name=".MainActivity" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> intent-filter> activity> 遇到问题,可以先clean下再rebuild 或是直接清除缓存重启 不行的话自行google~ 之后教程大家看官网即可:Android Compose 教程 当然国内用户build过慢可以换源或是科学上网,这里不赘述~ 文章来源于互联网:【Android】Jetpack Compose 环境配置 --- 由 答源 DAN 底座 1.4.0 生成 · 2026-11-08T19:20:19+00:00