moko-resources icon indicating copy to clipboard operation
moko-resources copied to clipboard

KM

Open aHardReset opened this issue 6 months ago • 1 comments
trafficstars

❓ Unable to configure multiplatformResources block in modern Android Studio KMP project using libs.versions.toml

Description

Hi! I'm trying to integrate moko-resources (0.24.5) into a Kotlin Multiplatform project using Android Studio Iguana, Kotlin 2.0.0, Gradle 8.1+, and libs.versions.toml for dependency management.

However, I keep getting the following error:

Unresolved reference: multiplatformResourcesPackage


What I Tried

build.gradle.kts

plugins {
    alias(libs.plugins.kotlinMultiplatform)
    alias(libs.plugins.androidLibrary)
    alias(libs.plugins.moko.resources)
}

multiplatformResources {
    multiplatformResourcesPackage = "co.synapzia.zenexperience"
}

---

`libs.versions.toml`

[versions]
resources = "0.24.5"

[libraries]
resources = { module = "dev.icerock.moko:resources", version.ref = "resources" }

[plugins]
moko-resources = { id = "dev.icerock.mobile.multiplatform-resources", version.ref = "resources" }

---

It seems the plugin extension is not applied or detected as expected.

Is there an updated setup guide for using moko-resources with Gradle 8+ and Kotlin 2.0?

Do I need to apply the plugin in a different way to get access to the multiplatformResources block?

Is the plugin compatible with libs.versions.toml and type-safe accessors?

Additional Info
Kotlin: 2.0.0

Android Gradle Plugin: 8.1.0

Gradle: 8.1+

IDE: Android Studio Iguana

Plugin version: 0.24.5

Module: :shared (used in a KMP project targeting Android and iOS)

aHardReset avatar May 14 '25 03:05 aHardReset

hi. please check readme.

multiplatformResources {
    resourcesPackage.set("org.example.library") // required
    resourcesClassName.set("SharedRes") // optional, default MR
    resourcesVisibility.set(MRVisibility.Internal) // optional, default Public
    iosBaseLocalizationRegion.set("en") // optional, default "en"
    iosMinimalDeploymentTarget.set("11.0") // optional, default "9.0"
}

Alex009 avatar May 14 '25 03:05 Alex009