diff --git a/example-app/build.gradle.kts b/example-app/build.gradle.kts
index 89d8baa5..77ad8d21 100644
--- a/example-app/build.gradle.kts
+++ b/example-app/build.gradle.kts
@@ -3,6 +3,7 @@ plugins {
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose)
id("org.jlleitschuh.gradle.ktlint")
+ id("com.google.android.libraries.mapsplatform.secrets-gradle-plugin") version "2.0.1"
}
ktlint {
@@ -13,6 +14,11 @@ ktlint {
}
}
+secrets {
+ propertiesFileName = "secrets.properties"
+ defaultPropertiesFileName = "local.defaults.properties"
+}
+
android {
namespace = "com.mapconductor.example"
compileSdk = project.property("compileSdk").toString().toInt()
@@ -28,8 +34,8 @@ android {
useSupportLibrary = true
}
- versionCode = 5
- versionName = "1.0.4"
+ versionCode = 6
+ versionName = "1.0.5"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
diff --git a/example-app/src/main/AndroidManifest.xml b/example-app/src/main/AndroidManifest.xml
index 23730101..3154713c 100644
--- a/example-app/src/main/AndroidManifest.xml
+++ b/example-app/src/main/AndroidManifest.xml
@@ -18,7 +18,23 @@
android:theme="@style/Theme.OverlayTest"
tools:targetApi="35">
+
+
+
+
+
+
(context)
+ val google = NativeParallelMarkerStrategy()
// val google = NativeSpatialMarkerStrategy()
// val google = NativeParallelMarkerStrategy()
- val mapbox = NativeSpatialMarkerStrategy()
- val here = NativeSpatialMarkerStrategy()
- val arcgis = NativeSpatialMarkerStrategy()
+ val mapbox = NativeParallelMarkerStrategy()
+ val here = NativeParallelMarkerStrategy()
+ val arcgis = NativeSpatialMarkerRenderingStrategy()
Strategies(
google = google,
mapbox = mapbox,
diff --git a/mapconductor-bom/gradle.properties b/mapconductor-bom/gradle.properties
new file mode 100644
index 00000000..8d73c695
--- /dev/null
+++ b/mapconductor-bom/gradle.properties
@@ -0,0 +1 @@
+libraryVersion=1.0.1
diff --git a/mapconductor-core/gradle.properties b/mapconductor-core/gradle.properties
index 57b18dd1..8d73c695 100644
--- a/mapconductor-core/gradle.properties
+++ b/mapconductor-core/gradle.properties
@@ -1 +1 @@
-libraryVersion=1.0.0
+libraryVersion=1.0.1
diff --git a/mapconductor-for-arcgis/build.gradle.kts b/mapconductor-for-arcgis/build.gradle.kts
index 6b5b842e..774a2215 100644
--- a/mapconductor-for-arcgis/build.gradle.kts
+++ b/mapconductor-for-arcgis/build.gradle.kts
@@ -15,74 +15,6 @@ ktlint {
}
}
-// Task to create secrets.properties in root project if it doesn't exist
-tasks.register("ensureSecretsFiles") {
- doFirst {
- val secretsFile = rootProject.file("secrets.properties")
- val defaultsFile = rootProject.file("local.defaults.properties")
-
- // Create secrets.properties if it doesn't exist
- if (!secretsFile.exists()) {
- secretsFile.createNewFile()
- println("Created secrets.properties in root project")
- }
-
- // Create local.defaults.properties if it doesn't exist
- if (!defaultsFile.exists()) {
- defaultsFile.createNewFile()
- println("Created local.defaults.properties in root project")
- }
-
- // Ensure ARCGIS_API_KEY exists in secrets.properties
- val secretsContent = secretsFile.readText()
- if (!secretsContent.contains("ARCGIS_API_KEY=")) {
- secretsFile.appendText("ARCGIS_API_KEY=ARCGIS_API_KEY\n")
- println("Added ARCGIS_API_KEY to secrets.properties")
- }
-
- // Ensure ARCGIS_API_KEY exists in local.defaults.properties
- val defaultsContent = defaultsFile.readText()
- if (!defaultsContent.contains("ARCGIS_API_KEY=")) {
- defaultsFile.appendText("ARCGIS_API_KEY=ARCGIS_API_KEY\n")
- println("Added ARCGIS_API_KEY to local.defaults.properties")
- }
- }
-}
-
-// Function to read API key from secrets.properties
-fun getArcgisApiKey(): String {
- val secretsFile = rootProject.file("secrets.properties")
- val defaultsFile = rootProject.file("local.defaults.properties")
-
- // Try to read from secrets.properties first
- if (secretsFile.exists()) {
- val content = secretsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("ARCGIS_API_KEY=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty() && value != "ARCGIS_API_KEY") {
- return value
- }
- }
- }
- }
-
- // Fallback to local.defaults.properties
- if (defaultsFile.exists()) {
- val content = defaultsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("ARCGIS_API_KEY=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty()) {
- return value
- }
- }
- }
- }
-
- // Return placeholder if no valid key found
- return "ARCGIS_API_KEY"
-}
android {
namespace = "com.mapconductor.arcgis"
compileSdk = project.property("compileSdk").toString().toInt()
@@ -92,9 +24,6 @@ android {
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
-
- // Set the ArcGIS API key from secrets.properties
- manifestPlaceholders["ARCGIS_API_KEY"] = getArcgisApiKey()
}
buildFeatures {
@@ -123,10 +52,6 @@ android {
}
}
- // Run ensureSecretsFiles before processing manifests
- tasks.matching { it.name.contains("process") && it.name.contains("Manifest") }.configureEach {
- dependsOn("ensureSecretsFiles")
- }
compileOptions {
sourceCompatibility = JavaVersion.toVersion(project.property("javaVersion").toString())
targetCompatibility = JavaVersion.toVersion(project.property("javaVersion").toString())
@@ -142,10 +67,10 @@ dependencies {
compileOnly(libs.androidx.ui)
compileOnly(libs.androidx.ui.tooling.preview)
compileOnly(libs.androidx.core.ktx)
- compileOnly(platform(libs.androidx.compose.bom)) // ← bomでバージョン合わせる
+ implementation(platform(libs.androidx.compose.bom)) // ← bomでバージョン合わせる
// Lifecycle(MapView用)
- compileOnly(libs.androidx.lifecycle.runtime.ktx)
- compileOnly(libs.androidx.lifecycle.common.java8)
+ implementation(libs.androidx.lifecycle.runtime.ktx)
+ implementation(libs.androidx.lifecycle.common.java8)
// ArcGIS SDK
compileOnly(libs.arcgis.maps.kotlin)
diff --git a/mapconductor-for-arcgis/gradle.properties b/mapconductor-for-arcgis/gradle.properties
index 57b18dd1..8d73c695 100644
--- a/mapconductor-for-arcgis/gradle.properties
+++ b/mapconductor-for-arcgis/gradle.properties
@@ -1 +1 @@
-libraryVersion=1.0.0
+libraryVersion=1.0.1
diff --git a/mapconductor-for-arcgis/src/main/AndroidManifest.xml b/mapconductor-for-arcgis/src/main/AndroidManifest.xml
index 06e5f3c4..78c3e858 100644
--- a/mapconductor-for-arcgis/src/main/AndroidManifest.xml
+++ b/mapconductor-for-arcgis/src/main/AndroidManifest.xml
@@ -1,10 +1,2 @@
-
-
-
-
-
-
-
+
diff --git a/mapconductor-for-googlemaps/build.gradle.kts b/mapconductor-for-googlemaps/build.gradle.kts
index b168597c..ffb7d5b4 100644
--- a/mapconductor-for-googlemaps/build.gradle.kts
+++ b/mapconductor-for-googlemaps/build.gradle.kts
@@ -15,75 +15,6 @@ ktlint {
}
}
-// Task to create secrets.properties in root project if it doesn't exist
-tasks.register("ensureSecretsFiles") {
- doFirst {
- val secretsFile = rootProject.file("secrets.properties")
- val defaultsFile = rootProject.file("local.defaults.properties")
-
- // Create secrets.properties if it doesn't exist
- if (!secretsFile.exists()) {
- secretsFile.createNewFile()
- println("Created secrets.properties in root project")
- }
-
- // Create local.defaults.properties if it doesn't exist
- if (!defaultsFile.exists()) {
- defaultsFile.createNewFile()
- println("Created local.defaults.properties in root project")
- }
-
- // Ensure GOOGLE_MAPS_API_KEY exists in secrets.properties
- val secretsContent = secretsFile.readText()
- if (!secretsContent.contains("GOOGLE_MAPS_API_KEY=")) {
- secretsFile.appendText("GOOGLE_MAPS_API_KEY=GOOGLE_MAPS_API_KEY\n")
- println("Added GOOGLE_MAPS_API_KEY to secrets.properties")
- }
-
- // Ensure GOOGLE_MAPS_API_KEY exists in local.defaults.properties
- val defaultsContent = defaultsFile.readText()
- if (!defaultsContent.contains("GOOGLE_MAPS_API_KEY=")) {
- defaultsFile.appendText("GOOGLE_MAPS_API_KEY=GOOGLE_MAPS_API_KEY\n")
- println("Added GOOGLE_MAPS_API_KEY to local.defaults.properties")
- }
- }
-}
-
-// Function to read API key from secrets.properties
-fun getGoogleMapsApiKey(): String {
- val secretsFile = rootProject.file("secrets.properties")
- val defaultsFile = rootProject.file("local.defaults.properties")
-
- // Try to read from secrets.properties first
- if (secretsFile.exists()) {
- val content = secretsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("GOOGLE_MAPS_API_KEY=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty() && value != "GOOGLE_MAPS_API_KEY") {
- return value
- }
- }
- }
- }
-
- // Fallback to local.defaults.properties
- if (defaultsFile.exists()) {
- val content = defaultsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("GOOGLE_MAPS_API_KEY=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty()) {
- return value
- }
- }
- }
- }
-
- // Return placeholder if no valid key found
- return "GOOGLE_MAPS_API_KEY"
-}
-
android {
namespace = "com.mapconductor.googlemaps"
compileSdk = project.property("compileSdk").toString().toInt()
@@ -93,9 +24,6 @@ android {
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
-
- // Set the Google Maps API key from secrets.properties
- manifestPlaceholders["GOOGLE_MAPS_API_KEY"] = getGoogleMapsApiKey()
}
buildFeatures {
@@ -124,10 +52,6 @@ android {
}
}
- // Run ensureSecretsFiles before processing manifests
- tasks.matching { it.name.contains("process") && it.name.contains("Manifest") }.configureEach {
- dependsOn("ensureSecretsFiles")
- }
compileOptions {
sourceCompatibility = JavaVersion.toVersion(project.property("javaVersion").toString())
targetCompatibility = JavaVersion.toVersion(project.property("javaVersion").toString())
@@ -139,10 +63,10 @@ android {
dependencies {
- implementation(libs.androidx.core.ktx)
- implementation(libs.androidx.ui)
- implementation(libs.androidx.foundation)
- implementation(libs.androidx.ui.tooling.preview)
+ compileOnly(libs.androidx.core.ktx)
+ compileOnly(libs.androidx.ui)
+ compileOnly(libs.androidx.foundation)
+ compileOnly(libs.androidx.ui.tooling.preview)
implementation(platform(libs.androidx.compose.bom)) // ← bomでバージョン合わせる
// Lifecycle(MapView用)
implementation(libs.androidx.lifecycle.runtime.ktx)
diff --git a/mapconductor-for-googlemaps/gradle.properties b/mapconductor-for-googlemaps/gradle.properties
index 57b18dd1..8d73c695 100644
--- a/mapconductor-for-googlemaps/gradle.properties
+++ b/mapconductor-for-googlemaps/gradle.properties
@@ -1 +1 @@
-libraryVersion=1.0.0
+libraryVersion=1.0.1
diff --git a/mapconductor-for-googlemaps/src/main/AndroidManifest.xml b/mapconductor-for-googlemaps/src/main/AndroidManifest.xml
index 118224ea..78c3e858 100644
--- a/mapconductor-for-googlemaps/src/main/AndroidManifest.xml
+++ b/mapconductor-for-googlemaps/src/main/AndroidManifest.xml
@@ -1,9 +1,2 @@
-
-
-
-
-
-
+
diff --git a/mapconductor-for-here/build.gradle.kts b/mapconductor-for-here/build.gradle.kts
index 43628872..a25183b2 100644
--- a/mapconductor-for-here/build.gradle.kts
+++ b/mapconductor-for-here/build.gradle.kts
@@ -15,116 +15,6 @@ ktlint {
}
}
-// Task to create secrets.properties in root project if it doesn't exist
-tasks.register("ensureSecretsFiles") {
- doFirst {
- val secretsFile = rootProject.file("secrets.properties")
- val defaultsFile = rootProject.file("local.defaults.properties")
-
- // Create secrets.properties if it doesn't exist
- if (!secretsFile.exists()) {
- secretsFile.createNewFile()
- println("Created secrets.properties in root project")
- }
-
- // Create local.defaults.properties if it doesn't exist
- if (!defaultsFile.exists()) {
- defaultsFile.createNewFile()
- println("Created local.defaults.properties in root project")
- }
-
- // Ensure HERE_ACCESS_KEY_ID and HERE_ACCESS_KEY_SECRET exist in secrets.properties
- val secretsContent = secretsFile.readText()
- if (!secretsContent.contains("HERE_ACCESS_KEY_ID=")) {
- secretsFile.appendText("HERE_ACCESS_KEY_ID=HERE_ACCESS_KEY_ID\n")
- println("Added HERE_ACCESS_KEY_ID to secrets.properties")
- }
- if (!secretsContent.contains("HERE_ACCESS_KEY_SECRET=")) {
- secretsFile.appendText("HERE_ACCESS_KEY_SECRET=HERE_ACCESS_KEY_SECRET\n")
- println("Added HERE_ACCESS_KEY_SECRET to secrets.properties")
- }
-
- // Ensure HERE_ACCESS_KEY_ID and HERE_ACCESS_KEY_SECRET exist in local.defaults.properties
- val defaultsContent = defaultsFile.readText()
- if (!defaultsContent.contains("HERE_ACCESS_KEY_ID=")) {
- defaultsFile.appendText("HERE_ACCESS_KEY_ID=HERE_ACCESS_KEY_ID\n")
- println("Added HERE_ACCESS_KEY_ID to local.defaults.properties")
- }
- if (!defaultsContent.contains("HERE_ACCESS_KEY_SECRET=")) {
- defaultsFile.appendText("HERE_ACCESS_KEY_SECRET=HERE_ACCESS_KEY_SECRET\n")
- println("Added HERE_ACCESS_KEY_SECRET to local.defaults.properties")
- }
- }
-}
-
-// Functions to read API keys from secrets.properties
-fun getHereAccessKeyId(): String {
- val secretsFile = rootProject.file("secrets.properties")
- val defaultsFile = rootProject.file("local.defaults.properties")
-
- // Try to read from secrets.properties first
- if (secretsFile.exists()) {
- val content = secretsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("HERE_ACCESS_KEY_ID=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty() && value != "HERE_ACCESS_KEY_ID") {
- return value
- }
- }
- }
- }
-
- // Fallback to local.defaults.properties
- if (defaultsFile.exists()) {
- val content = defaultsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("HERE_ACCESS_KEY_ID=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty()) {
- return value
- }
- }
- }
- }
-
- // Return placeholder if no valid key found
- return "HERE_ACCESS_KEY_ID"
-}
-
-fun getHereAccessKeySecret(): String {
- val secretsFile = rootProject.file("secrets.properties")
- val defaultsFile = rootProject.file("local.defaults.properties")
-
- // Try to read from secrets.properties first
- if (secretsFile.exists()) {
- val content = secretsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("HERE_ACCESS_KEY_SECRET=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty() && value != "HERE_ACCESS_KEY_SECRET") {
- return value
- }
- }
- }
- }
-
- // Fallback to local.defaults.properties
- if (defaultsFile.exists()) {
- val content = defaultsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("HERE_ACCESS_KEY_SECRET=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty()) {
- return value
- }
- }
- }
- }
-
- // Return placeholder if no valid key found
- return "HERE_ACCESS_KEY_SECRET"
-}
android {
namespace = "com.mapconductor.here"
compileSdk = project.property("compileSdk").toString().toInt()
@@ -134,10 +24,6 @@ android {
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
-
- // Set the HERE API keys from secrets.properties
- manifestPlaceholders["HERE_ACCESS_KEY_ID"] = getHereAccessKeyId()
- manifestPlaceholders["HERE_ACCESS_KEY_SECRET"] = getHereAccessKeySecret()
}
buildFeatures {
@@ -166,10 +52,6 @@ android {
}
}
- // Run ensureSecretsFiles before processing manifests
- tasks.matching { it.name.contains("process") && it.name.contains("Manifest") }.configureEach {
- dependsOn("ensureSecretsFiles")
- }
compileOptions {
sourceCompatibility = JavaVersion.toVersion(project.property("javaVersion").toString())
targetCompatibility = JavaVersion.toVersion(project.property("javaVersion").toString())
@@ -184,10 +66,10 @@ dependencies {
compileOnly(libs.androidx.ui)
compileOnly(libs.androidx.ui.tooling.preview)
compileOnly(libs.androidx.foundation)
- compileOnly(platform(libs.androidx.compose.bom)) // ← bomでバージョン合わせる
+ implementation(platform(libs.androidx.compose.bom)) // ← bomでバージョン合わせる
// Lifecycle(MapView用)
- compileOnly(libs.androidx.lifecycle.runtime.ktx)
- compileOnly(libs.androidx.lifecycle.common.java8)
+ implementation(libs.androidx.lifecycle.runtime.ktx)
+ implementation(libs.androidx.lifecycle.common.java8)
// libs
compileOnly(
diff --git a/mapconductor-for-here/gradle.properties b/mapconductor-for-here/gradle.properties
index 57b18dd1..8d73c695 100644
--- a/mapconductor-for-here/gradle.properties
+++ b/mapconductor-for-here/gradle.properties
@@ -1 +1 @@
-libraryVersion=1.0.0
+libraryVersion=1.0.1
diff --git a/mapconductor-for-here/src/main/AndroidManifest.xml b/mapconductor-for-here/src/main/AndroidManifest.xml
index da77d7df..78c3e858 100644
--- a/mapconductor-for-here/src/main/AndroidManifest.xml
+++ b/mapconductor-for-here/src/main/AndroidManifest.xml
@@ -1,11 +1,2 @@
-
-
-
-
-
-
+
diff --git a/mapconductor-for-mapbox/build.gradle.kts b/mapconductor-for-mapbox/build.gradle.kts
index 37edfe8b..27ab1dad 100644
--- a/mapconductor-for-mapbox/build.gradle.kts
+++ b/mapconductor-for-mapbox/build.gradle.kts
@@ -15,86 +15,14 @@ ktlint {
}
}
-// Task to create secrets.properties in root project if it doesn't exist
-tasks.register("ensureSecretsFiles") {
- doFirst {
- val secretsFile = rootProject.file("secrets.properties")
- val defaultsFile = rootProject.file("local.defaults.properties")
-
- // Create secrets.properties if it doesn't exist
- if (!secretsFile.exists()) {
- secretsFile.createNewFile()
- println("Created secrets.properties in root project")
- }
-
- // Create local.defaults.properties if it doesn't exist
- if (!defaultsFile.exists()) {
- defaultsFile.createNewFile()
- println("Created local.defaults.properties in root project")
- }
-
- // Ensure MAPBOX_ACCESS_TOKEN exists in secrets.properties
- val secretsContent = secretsFile.readText()
- if (!secretsContent.contains("MAPBOX_ACCESS_TOKEN=")) {
- secretsFile.appendText("MAPBOX_ACCESS_TOKEN=MAPBOX_ACCESS_TOKEN\n")
- println("Added MAPBOX_ACCESS_TOKEN to secrets.properties")
- }
-
- // Ensure MAPBOX_ACCESS_TOKEN exists in local.defaults.properties
- val defaultsContent = defaultsFile.readText()
- if (!defaultsContent.contains("MAPBOX_ACCESS_TOKEN=")) {
- defaultsFile.appendText("MAPBOX_ACCESS_TOKEN=MAPBOX_ACCESS_TOKEN\n")
- println("Added MAPBOX_ACCESS_TOKEN to local.defaults.properties")
- }
- }
-}
-
-// Function to read API key from secrets.properties
-fun getMapboxAccessToken(): String {
- val secretsFile = rootProject.file("secrets.properties")
- val defaultsFile = rootProject.file("local.defaults.properties")
-
- // Try to read from secrets.properties first
- if (secretsFile.exists()) {
- val content = secretsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("MAPBOX_ACCESS_TOKEN=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty() && value != "MAPBOX_ACCESS_TOKEN") {
- return value
- }
- }
- }
- }
-
- // Fallback to local.defaults.properties
- if (defaultsFile.exists()) {
- val content = defaultsFile.readText()
- content.lines().forEach { line ->
- if (line.startsWith("MAPBOX_ACCESS_TOKEN=")) {
- val value = line.substringAfter("=").trim()
- if (value.isNotEmpty()) {
- return value
- }
- }
- }
- }
-
- // Return placeholder if no valid key found
- return "MAPBOX_ACCESS_TOKEN"
-}
android {
namespace = "com.mapconductor.mapbox"
compileSdk = project.property("compileSdk").toString().toInt()
defaultConfig {
minSdk = project.property("minSdk").toString().toInt()
-
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
-
- // Set the Mapbox access token from secrets.properties
- manifestPlaceholders["MAPBOX_ACCESS_TOKEN"] = getMapboxAccessToken()
}
buildFeatures {
@@ -121,11 +49,6 @@ android {
)
}
}
-
- // Run ensureSecretsFiles before processing manifests
- tasks.matching { it.name.contains("process") && it.name.contains("Manifest") }.configureEach {
- dependsOn("ensureSecretsFiles")
- }
compileOptions {
sourceCompatibility = JavaVersion.toVersion(project.property("javaVersion").toString())
targetCompatibility = JavaVersion.toVersion(project.property("javaVersion").toString())
@@ -140,10 +63,10 @@ dependencies {
compileOnly(libs.androidx.ui)
compileOnly(libs.androidx.foundation)
compileOnly(libs.androidx.ui.tooling.preview)
- compileOnly(platform(libs.androidx.compose.bom)) // ← bomでバージョン合わせる
+ implementation(platform(libs.androidx.compose.bom)) // ← bomでバージョン合わせる
// Lifecycle(MapView用)
- compileOnly(libs.androidx.lifecycle.runtime.ktx)
- compileOnly(libs.androidx.lifecycle.common.java8)
+ implementation(libs.androidx.lifecycle.runtime.ktx)
+ implementation(libs.androidx.lifecycle.common.java8)
// Mapbox SDK
compileOnly(libs.mapbox.android)
diff --git a/mapconductor-for-mapbox/gradle.properties b/mapconductor-for-mapbox/gradle.properties
index 57b18dd1..8d73c695 100644
--- a/mapconductor-for-mapbox/gradle.properties
+++ b/mapconductor-for-mapbox/gradle.properties
@@ -1 +1 @@
-libraryVersion=1.0.0
+libraryVersion=1.0.1
diff --git a/mapconductor-for-mapbox/src/main/AndroidManifest.xml b/mapconductor-for-mapbox/src/main/AndroidManifest.xml
index ab85bb72..dae961aa 100644
--- a/mapconductor-for-mapbox/src/main/AndroidManifest.xml
+++ b/mapconductor-for-mapbox/src/main/AndroidManifest.xml
@@ -1,8 +1,3 @@
-
-
-
-
-
+
+
diff --git a/mapconductor-icons/build.gradle.kts b/mapconductor-icons/build.gradle.kts
index 93ccf789..8b6ba200 100644
--- a/mapconductor-icons/build.gradle.kts
+++ b/mapconductor-icons/build.gradle.kts
@@ -63,9 +63,9 @@ android {
dependencies {
implementation(libs.androidx.core.ktx)
- implementation(libs.androidx.compose.ui.tooling.preview)
+ compileOnly(libs.androidx.compose.ui.tooling.preview)
compileOnly(libs.androidx.foundation)
- compileOnly(platform(libs.androidx.compose.bom))
+ implementation(platform(libs.androidx.compose.bom))
compileOnly(project(":mapconductor-core"))
testImplementation(libs.junit)
diff --git a/mapconductor-marker-native-strategy/build.gradle.kts b/mapconductor-marker-native-strategy/build.gradle.kts
index 3da7fde7..ad1efb07 100644
--- a/mapconductor-marker-native-strategy/build.gradle.kts
+++ b/mapconductor-marker-native-strategy/build.gradle.kts
@@ -75,10 +75,10 @@ dependencies {
// Compose dependencies for BitmapIcon/DefaultIcon
compileOnly(libs.androidx.ui)
compileOnly(libs.androidx.foundation)
- compileOnly(platform(libs.androidx.compose.bom))
+ implementation(platform(libs.androidx.compose.bom))
// Coroutines for Semaphore and withPermit
- compileOnly("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3")
+ implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3")
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
diff --git a/mapconductor-marker-native-strategy/gradle.properties b/mapconductor-marker-native-strategy/gradle.properties
index e404242b..a6b2eab0 100644
--- a/mapconductor-marker-native-strategy/gradle.properties
+++ b/mapconductor-marker-native-strategy/gradle.properties
@@ -1,4 +1,4 @@
-libraryVersion=1.0.0
+libraryVersion=1.0.1
# Enable support for flexible page sizes (e.g., 16KB pages on Android 15+)
APP_SUPPORT_FLEXIBLE_PAGE_SIZES = true
diff --git a/mapconductor-marker-strategy/build.gradle.kts b/mapconductor-marker-strategy/build.gradle.kts
index 9a963b6f..5b94d15c 100644
--- a/mapconductor-marker-strategy/build.gradle.kts
+++ b/mapconductor-marker-strategy/build.gradle.kts
@@ -55,10 +55,10 @@ dependencies {
// Compose dependencies for BitmapIcon/DefaultIcon
compileOnly(libs.androidx.ui)
compileOnly(libs.androidx.foundation)
- compileOnly(platform(libs.androidx.compose.bom))
+ implementation(platform(libs.androidx.compose.bom))
// Coroutines for Semaphore and withPermit
- compileOnly("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3")
+ implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3")
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
diff --git a/mapconductor-marker-strategy/gradle.properties b/mapconductor-marker-strategy/gradle.properties
index 57b18dd1..8d73c695 100644
--- a/mapconductor-marker-strategy/gradle.properties
+++ b/mapconductor-marker-strategy/gradle.properties
@@ -1 +1 @@
-libraryVersion=1.0.0
+libraryVersion=1.0.1