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