为项目添加依赖项
你已经创建了首个跨平台Kotlin项目!现在让我们学习如何添加第三方库依赖项,这对构建成功的跨平台应用至关重要。
依赖项类型
在Kotlin跨平台项目中可使用两种依赖项:
跨平台依赖项 。这类库支持多平台目标,可用于通用源集
commonMain
。许多现代Android库已具备跨平台支持,例如Koin、 Apollo和Okio 。更多跨平台库可通过JetBrains的实验性搜索服务klibs.io发现。
原生依赖项 。这些是各生态系统的常规库。在原生项目中,Android通常使用Gradle管理,iOS则使用CocoaPods或其他依赖管理器。
在共享模块中,若需使用平台API(如安全存储),仍需添加原生依赖项至
androidMain
和iosMain
源集。
两种依赖项均可使用本地或外部仓库。
添加跨平台依赖项
让我们为应用添加节日氛围:在设备信息基础上,新增显示距离元旦天数的功能。全平台支持的kotlinx-datetime
库是处理日期的最便捷方式。
打开
shared
目录下的build.gradle.kts
文件。在
commonMain
源集依赖项中添加:kotlin { sourceSets { commonMain.dependencies { implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.6.0") } } }点击通知栏的立即同步同步Gradle文件。
在
shared/src/commonMain/kotlin
中新建NewYear.kt
文件。使用
date-time
日期运算实现计算元旦剩余天数的函数:import kotlinx.datetime.* fun daysUntilNewYear(): Int { val today = Clock.System.todayIn(TimeZone.currentSystemDefault()) val closestNewYear = LocalDate(today.year + 1, 1, 1) return today.daysUntil(closestNewYear) } fun daysPhrase(): String = "距离元旦只剩${daysUntilNewYear()}天啦!🎆"在
Greeting.kt
中更新Greeting
类以展示结果:class Greeting { private val platform: Platform = getPlatform() fun greet(): List<String> = buildList { add(if (Random.nextBoolean()) "嗨!" else "你好!") add("猜猜这是啥!> ${platform.name.reversed()}!") add(daysPhrase()) } }从Android Studio重新运行composeApp和iosApp配置查看效果:

下一步
教程下一部分将为项目添加更多依赖项和复杂逻辑。
另请参阅
了解如何添加各类跨平台依赖: Kotlin库、Kotlin跨平台库及其他跨平台项目。
学习如何为平台特定源集添加Android依赖及使用或不使用CocoaPods的iOS依赖。
查看示例项目中Android与iOS库的使用方式。
获取帮助
Kotlin Slack 。获取邀请并加入#multiplatform频道。
Kotlin问题追踪器。 提交新问题。