Мультиплатформенность Kotlin - синтаксическая ошибка «ожидаемое и соответствующее фактическое значение объявлены в одномAndroid

Форум для тех, кто программирует под Android
Anonymous
Мультиплатформенность Kotlin - синтаксическая ошибка «ожидаемое и соответствующее фактическое значение объявлены в одном

Сообщение Anonymous »

В моем мультиплатформенном проекте на Kotlin есть несколько конструкций «ожидание/факт». Существует одна проблема с ProfileProvider. Вот моя настройка.
Исходный набор commonMain содержит ожидаемый класс ProfileProvider.kt:

Код: Выделить всё

interface IProfileProvider {
val profile: MutableStateFlow
fun reloadProfile()
}

expect class ProfileProvider: IProfileProvider
И исходный набор androidMain содержит ProfileProvider.android.kt:

Код: Выделить всё

actual class ProfileProvider(
private val authProvider: AuthProvider,
private val userRepository: UserRepository,
private val fileRepository: FileRepository,
defaultDispatcher: CoroutineDispatcher,
private val context: Context
): IProfileProvider {
private var _profile = MutableStateFlow
(null)
override val profile = _profile
...
}
В ProfileProvider.kt мое объявление ожидания ожидаемого класса ProfileProvider: IProfileProvider помечается как ошибка с сообщением ProfileProvider: ожидаемый и соответствующий фактические объявляются в том же модуле.
Кто-нибудь знает, почему? Я предполагаю, что конфигурация моего проекта может быть неправильной, поскольку у меня есть единственный модуль под названием app, который содержит androidMain, commonMain и iosMain исходные наборы. Это сообщение об ошибке касается исходных наборов или модулей? Надеюсь, кто-нибудь сможет прояснить ситуацию.

Подробнее здесь: https://stackoverflow.com/questions/791 ... re-declare

Вернуться в «Android»