[swift-evolution] [Pitch]Building a limited framework to develop Android Apps in Swift 3.0

Douglas Gregor dgregor at apple.com
Mon Oct 10 11:41:49 CDT 2016

> On Oct 9, 2016, at 9:45 PM, Tony Constantinides via swift-evolution <swift-evolution at swift.org> wrote:
> In Swift 3.0 you can build Android apps in Linux but only console apps as there is no framework to build GUI apps using JNI.
> What I propose is to build an initial limited framework coded in C that calls enough of the Java Android API via JNI to bootstrap the android app and to create widgets and layouts.A default Androidmanifest.xml file and some files needed to be generated to make a valid android app.
>   The Android API java surface is vast, so this framework needs to be build over many releases to be useful. Developing a graphical Android app requires interaction with "Activities" and the package manager and some widgets like Button and some layouts like "RelativeLayout" and "LinearLayout".
>  The result will be the ability to develop GUI Android apps on Linux using Swift 3.0
> Further support for additional APIs will be provided once the basics are solid..
> Who am I: Senior Android mobile developer with more than six years experience on Android.
> Am I able to build Swift 3.0 on Linux: Yes

The swift-evolution process is primarily focused on the Swift language and standard library. Large-scale API development, which binding to/creating a GUI library entails, is out-of-scope for this process and should occur in a different forum.


More information about the swift-evolution mailing list