# From an Android to a Kotlin Multiplatform library

DevFeed: [From an Android to a Kotlin Multiplatform library](<https://devfeed.tech/articles/from-an-android-to-a-kotlin-multiplatform-library-25582.md>)

Original publisher: [Read original article](<https://www.marcogomiero.com/posts/2025/android-lib-to-kmp/>)

Author: Marco Gomiero

Published: 2025-03-16T00:00:00Z

Content type: tutorial

Language: en

Sources: [Posts on Marco Gomiero](<https://devfeed.tech/sources/posts-on-marco-gomiero.md>)

Topics: [Kotlin Multiplatform](<https://devfeed.tech/topics/kotlin-multiplatform.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>), [migration](<https://devfeed.tech/topics/migration.md>), [Android](<https://devfeed.tech/topics/android.md>), [Git](<https://devfeed.tech/topics/git.md>), [Library](<https://devfeed.tech/topics/library.md>), [Testing](<https://devfeed.tech/topics/testing.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [git](<https://devfeed.tech/tags/git.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [library](<https://devfeed.tech/tags/library.md>), [migration](<https://devfeed.tech/tags/migration.md>), [multiplatform](<https://devfeed.tech/tags/multiplatform.md>), [testing](<https://devfeed.tech/tags/testing.md>)

## AI overview

An account of migrating the RSS-Parser Android library to Kotlin Multiplatform, covering source-set restructuring, preservation of Git history, platform-specific dependencies, and cross-platform testing.

## Source excerpt

As Kotlin Multiplatform (KMP) continues to gain traction, more Android libraries are transitioning to support multiple platforms. However, this transition doesn't always come for free; depending on the project, there could be different challenges. Recently, I migrated an existing Android library (RSS-Parser, a library to parse RSS feeds). In this article, I will share my experience, cover all the challenges I faced during this journey, and describe the solutions I implemented to overcome them, from preserving git history to handling platform-specific dependencies and testing across different platforms.