The Android Workgroup is hosting another bi-weekly meeting 2026-06-17T16:00:00Z→2026-06-17T17:00:00Z. The workgroup meetings are free for anyone interested to join. Feel free to chime in, or just listen to the topics and discussions.
Post any topics you'd like to discuss here or on the Swift Open Source Slack.
Some topics:
- Find out how well the snapshot toolchains are working for the workgroup members, as the
swift-build change is a big one that needs more work for Android. One seeming advantage is that the issue with cross-compiling packages that use macros seems to be fixed by the swift-build change, as @marcprux found, so packages like Foundation and Testing that use their own macros can now be cross-compiled using SwiftPM (we already cross-compile those two using CMake in the toolchain build, but most non-toolchain packages don't have a CMake config).
- I warned that the new LTS NDK 30 would drop this month in the middle of the Swift release cycle, but the second beta has not even released yet, marking the longest beta period ever for an Android NDK. See how devs are evaluating this NDK 30 beta, as we test it out on the CI, and figure out if any changes are needed to our previously discussed NDK 30 transition.
- Doug asked about the Embedded subset for Android recently, enquire if anybody has tried building it.
- We should discuss C++ interoperability and how much people are using it on Android, as there was a change recently in where the Swift bridging header for C/C++ interop is installed in the trunk toolchain, which might affect that particular C/C++ interop for Android. We currently run the non-executable C/C++ Interop tests on the official Android CI, and I'm looking at spinning up the remaining 25% of executable Interop tests in GitHub runners with the Android emulator (I have long occasionally checked the executable tests locally in an Android device instead). I just checked and only 9 C++ interop tests in the Swift compiler validation suite are currently disabled for an Android arch:
> grep -r "XFAIL.*droid" test/Interop
test/Interop/SwiftToCxx/stdlib/stdlib-in-cxx-no-diagnostics-generated-header.cpp:// XFAIL: OS=linux-android, OS=linux-androideabi
test/Interop/Cxx/class/constructors-typechecker.swift:// XFAIL: OS=linux-androideabi
test/Interop/Cxx/class/constructors-module-interface.swift:// XFAIL: OS=linux-androideabi
test/Interop/Cxx/class/constructors-diagnostics.swift:// XFAIL: OS=linux-androideabi
test/Interop/Cxx/class/constructors-silgen.swift:// XFAIL: OS=linux-androideabi
test/Interop/Cxx/class/invalid-members/stdlib-containers-of-incomplete.swift:// XFAIL: OS=linux-android, OS=linux-androideabi
test/Interop/Cxx/class/constructors-copy-module-interface.swift:// XFAIL: OS=linux-androideabi
test/Interop/Cxx/stdlib/fake-toolchain-module-interface.swift:// XFAIL: OS=linux-androideabi
test/Interop/Cxx/stdlib/fake-toolchain-module-interface.swift:// XFAIL: OS=linux-android
test/Interop/Cxx/stdlib/use-std-optional-lib.swift:// XFAIL: OS=linux-androideabi
1 Like