Rafał Kuźmiński
10/25/2023, 9:04 AMCiaran Sloan
10/25/2023, 9:10 AMCiaran Sloan
10/25/2023, 9:11 AMCiaran Sloan
10/25/2023, 9:15 AMRafał Kuźmiński
10/25/2023, 9:16 AMjuliocbcotta
10/25/2023, 4:41 PMRafał Kuźmiński
10/25/2023, 7:04 PMjuliocbcotta
10/25/2023, 8:22 PMCiaran Sloan
10/26/2023, 8:58 AMFoo
from frameworkA
will not have type equality of Foo
from frameworkB
.
> but is there a way for splitting the shared code in different gradle modules and compiling them for iOS as if it was just one artefact?
Yes, this is what we currently do. We split our kmp codebase into feature modules and add each of these feature modules as dependencies of a shared
module that is then used to generate the Framework on iOS. So iOS imports this one framework as one package.Rafał Kuźmiński
10/26/2023, 9:09 AMCiaran Sloan
10/26/2023, 9:11 AM:kmp:feature-a
:kmp:feature-b
:kmp:feature-c
:kmp:shared
. Where :kmp:shared
depends on each of the feature modules.
On Android we then have :android:feature-a
that depends on :kmp:feature-a
and then :android:feature-b
that depends on :kmp:feature-b
and so on....
But for iOS the :kmp:shared
generates a Framework which the iOS codebase depends onCiaran Sloan
10/26/2023, 9:16 AMAnd somehow refactor our iOS libraries to use intermediate models instead of KotlinYeah I'd say thats your best bet
Rafał Kuźmiński
10/26/2023, 9:16 AMCiaran Sloan
10/26/2023, 9:18 AMRafał Kuźmiński
10/26/2023, 9:18 AMCiaran Sloan
10/26/2023, 9:19 AM