What is the state of D with Android/iOS

Joakim via Digitalmars-d digitalmars-d at puremagic.com
Tue Feb 24 09:15:27 PST 2015


On Tuesday, 24 February 2015 at 13:44:07 UTC, Rishub Nagpal wrote:
> Is D currently mature enough to create binaries for 
> android/iOS? I've been researching this, but most posts predate 
> 2013, and I wanted to know what was the current status.

Mature enough?  Sure, but that doesn't mean the support is there.

> D bindings for the JNI is certainly possible, so by extension 
> it should be possible to call D libraries with Android's NDK, 
> correct?

If you simply want to call a D library within an Android/iOS app, 
that's possible, though there are still some rough edges.  
Specifically, there is still some work to be done with certain 
floating-point operations on iOS 
(http://forum.dlang.org/post/m2mw4tab0w.fsf@comcast.net) and 
while Android/x86 will work fine 
(http://wiki.dlang.org/Build_DMD_for_Android), Android/ARM 
doesn't currently support TLS.  That lack of TLS support means 
you'd have to run a slightly patched druntime and I'm fairly 
certain phobos wouldn't work.

> Is is possible to write android apps purely in D similar to 
> mono for android?
>
> http://developer.xamarin.com/guides/android/getting_started/hello,android/hello,android_quickstart/

I have ported a simple, purely C GUI app to D on Android/x86, as 
you can see in my wiki link.  However, there is a pthreads issue 
that needs to be fixed for bigger apps and there is no pre-baked 
GUI support yet for D on Android, certainly not anything like 
Xamarin.  You could call the OpenGL ES APIs yourself or port some 
GUI library that targets them, but I don't know of anybody who 
has done so on Android or iOS.


More information about the Digitalmars-d mailing list