Beyond one platform: migrating an Android library to Kotlin Multiplatform
Abstract:
Back in 2016, out of my raising passion for Android development, I started working on RSSParser, a library for parsing RSS feeds on Android. Nowadays, out of my passion for Kotlin Multiplatform, I decided to make RSSParser Multiplatform... How hard can it be?In this talk, I will share the journey of expanding an Android library into the iOS and JVM world. We will cover the challenges faced during the process, including how to handle platform-specific dependencies, code organization, and testing strategies.
By the end of this talk, you'll have a better understanding of the benefits and challenges of creating a Kotlin Multiplatform library, and you'll be equipped with the knowledge and tools you need to conquer the Multiplatform world!
Slides:
Resources:
- Understand mobile project structure
https://kotlinlang.org/docs/multiplatform-mobile-understand-project-structure.html#source-sets - Connect to platform-specific APIs
https://kotlinlang.org/docs/multiplatform-connect-to-apis.html - OkHttp
https://square.github.io/okhttp/ - Ktor
https://ktor.io/ - NSURLSession
https://developer.apple.com/documentation/foundation/nsurlsession - Run tests with Kotlin Multiplatform
https://kotlinlang.org/docs/multiplatform-run-tests.html - Read a File in a Kotlin/Multiplatform Test
https://publicobject.com/2023/04/16/read-a-project-file-in-a-kotlin-multiplatform-test/ - gradle-maven-publish-plugin
https://github.com/vanniktech/gradle-maven-publish-plugin - RSSParser
https://github.com/prof18/RSS-Parser - #52 - RSS-Parser with Marco Gomiero
https://thebakery.dev/52/ - FeedFlow
https://www.feedflow.dev/