Добавление зависимостей Android
Процесс добавления зависимостей, специфичных для Android, в модуль Kotlin Multiplatform такой же, как и в обычных проектах Android: объявите зависимость в файле Gradle и импортируйте проект. После этого вы сможете использовать эту зависимость в коде Kotlin.
Мы рекомендуем объявлять зависимости Android в проектах Kotlin Multiplatform, добавляя их в определённый набор исходного кода Android. Для этого обновите файл build.gradle(.kts) в каталоге shared вашего проекта:
kotlin {
//...
sourceSets {
androidMain.dependencies {
implementation("com.example.android:app-magic:12.3")
}
}
}
kotlin {
//...
sourceSets {
androidMain {
dependencies {
implementation 'com.example.android:app-magic:12.3'
}
}
}
}
Перенос зависимости, которая в проекте Android была зависимостью верхнего уровня, в определённый набор исходного кода в мультиплатформенном проекте может быть затруднён, если у зависимости верхнего уровня было нестандартное имя конфигурации. Например, чтобы перенести зависимость debugImplementation с верхнего уровня проекта Android, вам нужно будет добавить зависимость implementation в набор исходного кода с именем androidDebug. Чтобы сократить усилия, необходимые для решения подобных проблем при миграции, можно добавить блок dependencies {} внутрь блока android {}:
kotlin {
android {
//...
dependencies {
implementation("com.example.android:app-magic:12.3")
}
}
}
kotlin {
android {
//...
dependencies {
implementation 'com.example.android:app-magic:12.3'
}
}
}
Зависимости, объявленные здесь, будут обрабатываться точно так же, как зависимости из блока верхнего уровня. При этом такое объявление позволит визуально отделить зависимости Android в скрипте сборки и сделать его понятнее.
Также поддерживается объявление зависимостей в отдельном блоке dependencies {} в конце скрипта — так, как это принято в проектах Android. Однако мы настоятельно рекомендуем не делать этого, поскольку настройка скрипта сборки, в котором зависимости Android указаны в блоке верхнего уровня, а зависимости других целевых платформ — в каждом наборе исходного кода, может привести к путанице.
Что дальше?
Ознакомьтесь с другими материалами о добавлении зависимостей в мультиплатформенные проекты и узнайте больше о следующем:
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/multiplatform/multiplatform-android-dependencies.html