Developers Can Now Make Android Apps With Apple's Swift - MacRumors
Skip to Content

Developers Can Now Make Android Apps With Apple's Swift

The first preview release of the Swift SDK for Android was published this week, allowing developers to build Android apps in Swift with official tooling and making it easier to share code across iOS and Android.

swift for android
The SDK enables Android apps to be built in Swift using officially supported tooling rather than community workarounds. In June, it was announced that Apple's Swift programming language would be officially extended to support Android app development through the establishment of a dedicated Android Working Group within the Swift open-source project.

Android interoperability is handled by swift-java, which can automatically generate bindings between Java and Swift so developers can use Swift code alongside existing Android APIs and Java code. The Swift Package Index now marks packages with Android support and says over 25% of all packages already build on Android, giving developers a base of reusable code.

The Swift SDK for Android is already available in nightly preview form bundled with the Swift for Windows installer or as a separate download for Linux and macOS users. A new Getting Started guide with end-to-end setup instructions and a set of example Android projects written in Swift to illustrate complete workflows is also available.

The group is preparing a vision document to set future priorities and is tracking progress on a public project board.

Tags: Android, Swift

Popular Stories

iOS 26

iOS 26.4 Adds Two New Features to CarPlay

Tuesday March 24, 2026 1:55 pm PDT by
iOS 26.4 was released today, and it includes a couple of new features for CarPlay: an Ambient Music widget and support for voice-based chatbot apps. To update your iPhone 11 or newer to iOS 26.4, open the Settings app and tap on General → Software Update. CarPlay will automatically offer the new features so long as the iPhone connected to your vehicle is running iOS 26.4 or later....
Apple Business hero

Apple Unveils 'Apple Business' All-in-One Platform

Tuesday March 24, 2026 8:53 am PDT by
Apple today announced Apple Business, a new all-in-one platform that unifies device management, productivity tools, and customer outreach features. The service is designed to be a consolidated replacement for several of Apple's existing business-focused offerings, including Apple Business Essentials, Apple Business Manager, and Apple Business Connect. It provides organizations with a single...
AirPods Pro Firmware Feature

Apple Releases New Firmware for AirPods Pro 3, AirPods Pro 2 and AirPods 4

Tuesday March 24, 2026 12:31 pm PDT by
Apple today released new firmware for the AirPods Pro 2, AirPods Pro 3, and the AirPods 4. The firmware has a version number of 8B39, up from 8B34 on the AirPods Pro 3, 8B28 on the AirPods Pro 2, and 8B21 on the AirPods 4. There is no word on what's included in the firmware, but Apple has a support document with limited notes. Most updates are limited to bug fixes and performance...

Top Rated Comments

22 weeks ago
Just for clarification, Swift is open. But when developing to Apple eco system you interact with OS libraries.
For example, SwiftUI is an Apple library. So it’s not that simple making a SwiftUI app suddenly work on android.

However, Swift by itself allows making the logic of an app cross platform.
Score: 14 Votes (Like | Disagree)
22 weeks ago
First Halo on PS5 and now this. Next thing you're going to tell me is that cats and dogs have made peace.
Score: 11 Votes (Like | Disagree)
22 weeks ago

I don't think they ever supported Java in Xcode directly.
Apple Developer Tools for Java > XCode. ( document archive)

https://developer.apple.com/library/archive/documentation/Java/Conceptual/Java14Development/02-JavaDevTools/JavaDevTools.html


The support faded over time. Over time Apple has become increasingly focused on moving folks from Objective-C ( and C derivatives ) to more broader usages of Swift . Xcode also shifted toward cranking out iOS apps where Java was pragmatically banned .

Oracle acquiring Java and starting to muck with the license didn’t help either.



At the risk of severely aging myself, I've been using Java since it came out ~1995 and would have moved to a Mac much earlier had Apple offered a decent "native" IDE for Java. The first IDE I used was VisualCafe - only available on Windows, which was somewhat ironic since Sun was competing with Microsoft back then and then Netbeans (which I've used ever since, with a detour to Eclipse and IntelliJ).
Netbeans started off as a “clone” of Delphi written in Java.

Netbeans runs on Java , so bootstrapping the IDE on Mac OS X wasn’t a big a deal as Apple baking their own branch of Java ( wanted the GUI integration “ just tright” ). A decent amount of Java development is backend , server side stuff so a choke point through Apple just slows that down a bit for new versions.

Google AI overview for ‘ historical apple development porting java to mac os x’

“…
Apple's relationship with Java on macOS (originally Mac OS X) has a rich and complex history, marked by periods of close integration, independent development, and eventual transition of responsibility.
Early Integration and Apple's Commitment:

* Mac OS Runtime for Java (MRJ): ('https://www.google.com/search?client=firefox-b-1-m&sca_esv=50bc830c1331a679&cs=0&q=Mac+OS+Runtime+for+Java+%28MRJ%29&sa=X&ved=2ahUKEwiJidLimcKQAxX2g4kEHUJyKXUQxccNegQICBAD&mstk=AUtExfDUt0vv6OPur5NP3wlcyOYy8GgZF6jw8LtnmDA8e1FRTLFjhgOOOv3Hl9_6IvOxX8qyuFS3egROOgtAmvUYDRq3CkEoTpD2KXjfSExLOASrFEJmJ5GWJlIuSes4lsSaZMg&csui=3')
In January 1997, Apple launched the MRJ, demonstrating an early commitment to Java.
* Mac OS X and First-Class Support: ('https://www.google.com/search?client=firefox-b-1-m&sca_esv=50bc830c1331a679&cs=0&q=Mac+OS+X+and+First-Class+Support&sa=X&ved=2ahUKEwiJidLimcKQAxX2g4kEHUJyKXUQxccNegQIERAD&mstk=AUtExfDUt0vv6OPur5NP3wlcyOYy8GgZF6jw8LtnmDA8e1FRTLFjhgOOOv3Hl9_6IvOxX8qyuFS3egROOgtAmvUYDRq3CkEoTpD2KXjfSExLOASrFEJmJ5GWJlIuSes4lsSaZMg&csui=3')
With the introduction of Mac OS X, Apple initially treated Java as a first-class language. This included shipping Java with the OS, providing libraries to integrate with OS X, and offering support within their Xcode IDE. Apple even had a Java application server platform called WebObjects.


* Apple's Own Build: ('https://www.google.com/search?client=firefox-b-1-m&sca_esv=50bc830c1331a679&cs=0&q=Apple%27s+Own+Build&sa=X&ved=2ahUKEwiJidLimcKQAxX2g4kEHUJyKXUQxccNegQIDxAD&mstk=AUtExfDUt0vv6OPur5NP3wlcyOYy8GgZF6jw8LtnmDA8e1FRTLFjhgOOOv3Hl9_6IvOxX8qyuFS3egROOgtAmvUYDRq3CkEoTpD2KXjfSExLOASrFEJmJ5GWJlIuSes4lsSaZMg&csui=3')
For a significant period, Apple maintained its own internal build of Java, allowing for security audits, custom patches, and deep integration with the OS.

Challenges and Transition of Responsibility:

* Declining Integration:
Over time, the tight integration of Java with OS X and the use of Apple's specific Java APIs diminished. The promised benefits of Java for desktop application development, particularly regarding native look and feel and performance, did not fully materialize as anticipated.
* Maintenance Burden:
Maintaining a separate, custom build of Java became increasingly challenging for Apple, especially as Oracle (which acquired Sun Microsystems, the creators of Java) made internal changes to Java that required refactoring of Apple's code.
* Security Concerns:
Java's history of security vulnerabilities, which prompted some experts to advise users to only enable Java on an as-needed basis, also played a role in Apple's reevaluation.


* Oracle Takes Over:
In 2010, Apple announced it would no longer be responsible for developing and maintaining Java on macOS. Oracle subsequently took over the development of the Mac JDK as part of OpenJDK …“

Also ..

“ Apple previously maintained its own build of Java for macOS, but this practice largely ceased with macOS 10.7 Lion. Apple no longer includes Java as a pre-installed component of macOS, nor does it provide its own updates for Java. “

So IDE that bootstrapped on top of Java had to adjust to whatever features Apple added. And Oracle porting to macOS is not a corporate core competency.




Anyway, if OSX did support Java at the time, I think I would have known as I was an avid Windows hater then. My first chance at full-time Java development didn't come until around 2007 and I used Netbeans IDE. I think at the time Apple did bundle the JDK or JRE but, again, I don't remember Xcode letting you build Java apps.
Apple adopted Java early . They just did it in an Apple fashion ( which is quirky from the outside ). If writing Java to primarily deploy off platform , then those quirks are not a feature.


As Java became more of a corporate software development platform ( not focused on Mac OS ) , Apple increasingly lost interest.
Score: 7 Votes (Like | Disagree)
22 weeks ago

"...so developers can use Swift code alongside existing Android APIs and Java code" - does this mean Xcode will support Java?
Funny enough, about 20 years ago, they did.

https://jdeploy.substack.com/p/how-the-app-store-ended-a-golden

Back around 2002 or so I even went to a Javaworld conference and Apple was there signing up developers.
Score: 7 Votes (Like | Disagree)
Hajj.david Avatar
22 weeks ago

Now make it work well for websites and servers too.
This exists, Vapor is the biggest Swift for server API but there are other projects as well, a fellow swift dev friend of mine made a website using just Swift and Xcode, I forgot what tool he used.
Score: 5 Votes (Like | Disagree)
Plutonius Avatar
22 weeks ago
I'm curious if this will mostly be used to port Android code to iOS or to port iOS code to Android ?
Score: 5 Votes (Like | Disagree)