Hey there,
I have an iOS SwiftUI app where I invested quite some time. Now I want to bring it to more platforms like Android and maybe later Windows. Is there an easy way to port it over? That would be one or two weeks maximum of work?
Hey there,
I have an iOS SwiftUI app where I invested quite some time. Now I want to bring it to more platforms like Android and maybe later Windows. Is there an easy way to port it over? That would be one or two weeks maximum of work?
You could use a framework like SwiftCrossUI. It doesn't have every feature SwiftUI has yet, but this is the exact use-case we would like to support. SwiftCrossUI also runs on iOS devices, so you could share the same code for all platforms instead of having to do some #if dance to use SwiftUI on iOS.
Skip seems to be one of the best options for Android. It does not currently officially support Windows but there are open feature requests.
Thank you, @bbrk24 and @matthewruzzi , for your reply.
Are SwiftCrossUI and Skip already in production, or are they still in beta?
I have a few questions about them:
Here are some lists of apps that use Skip:
https://play.google.com/store/apps/developer?id=The+App+Fair+Project
I don't know the full answers to your other questions. You should search the Skip documentation and forums.
SwiftCrossUI is unique (as far as I'm aware) in that it supports every major desktop and mobile operating system while using native widgets.
To answer your questions:
.apps for Apple platforms, etc. That's where support for custom Android-specific libraries would go. We don't support it yet but it is something that has been requested. In my opinion it should be relatively easy to implement, I just haven't had a proper reason to invest time in that yet. If you'd like to try out SwiftCrossUI + Swift Bundler I'd be happy to hack up a proof of concept of that feature at some point.I should add that SwiftCrossUI's primary focus has been desktop since the start. Our iOS and Android backends are our two newest backends. We'd love to focus more on getting our mobile support up to scratch, but the project only has one paying client at the moment, and their needs are on the desktop as well, so work on the mobile backends is mostly in my free time (and the free time of SwiftCrossUI's wonderful open source contributors).
If you're only targeting mobile, then Skip's the production ready solution. If you're targeting mobile and desktop, then there's no perfect solution, but I believe that SwiftCrossUI is the furthest along if you want to write cross platform applications that use native UI components under the hood in Swift.
Swift Bundler will also need a bit more work in order to support distributing apps on the Google Play Store as well.