Dev Watch

Blog archive

Even Microsoft Can't Make a Decent Android Emulator

If Microsoft had simply asked me first, I could've told them: Android emulation on Windows just doesn't work very well.

Mobile dev media are abuzz with news of problems with Project Astoria, part of Microsoft's much-ballyhooed effort to provide Universal Windows Platform Bridge toolkits that let developers build Windows apps for phones -- in Astoria's case by reusing their Android code.

Windows Central, on Friday the 13th, broke the story that there are problems with Astoria, described as a means to emulate Android apps on Windows. While neither confirming nor denying multiple reports of issues with the Astoria project, Microsoft provided the following "not ready yet" statement:

"We're committed to offering developers many options to bring their apps to the Windows Platform, including bridges available now for Web and iOS, and soon Win32. The Astoria bridge is not ready yet, but other tools offer great options for developers. For example, the iOS bridge enables developers to write a native Windows Universal app which calls UWP APIs directly from Objective-C, and to mix and match UWP and iOS concepts such as XAML and UIKit. Developers can write apps that run on all Windows 10 devices and take advantage of native Windows features easily. We're grateful to the feedback from the development community and look forward to supporting them as they develop apps for Windows 10."

Other bridge projects for Web apps, iOS apps and classic Win32 apps are reportedly still in the works. Windows Central noted that Astoria "was straight up emulation and could run into all sorts of legal and technical issues." Also, it said, "There are reports that the Android subsystem caused Windows 10 Mobile to slow down over time."

Not So Fast on Astoria
[Click on image for larger view.] Not So Fast on Astoria (source: Microsoft)

Well, that's something I -- and thousands of other Java developers working on Android apps from a Windows machine -- could have confirmed ahead of time. Android emulation using the Eclipse IDE with the Android Development Tools (ADT) plugin was horrible. Even with Android Studio, which Google last year put forth as the official replacement IDE for Android development, the emulation is without doubt the slowest piece of software I've ever had the misfortune to use. Creating an Android Virtual Device (AVD) to test out coding changes gobbled up tremendous amounts of RAM and brought my system -- any system, I'm thinking -- to a crawl.

The issue has brought up tons of comments on coding sites such as Stack Overflow ("Why is the Android emulator so slow? How can we speed up the Android emulator?") and Quora ("Why is the Android emulator so slow?") with no real satisfactory solutions having been found.

OK, so maybe it's a different kind of emulation from Astoria, but Android emulation and Windows just don't seem to mix.

Whatever the Astoria problems are, developers are left wondering about the project.

On the MSDN blog site, a May 10 posting announcing Astoria has practically gone dark, with several developers asking about the project but receiving no answers. The last post, published 11 days ago, asks:

"Is the 'Project Astoria Subsystem' for Windows 10 Mobile dead? From what I understand, Windows 10 Mobile Build 10586 was signed off my MS as the final build for the Threshold 2 release. According to a couple sites, that build does not contain the Project Astoria Subsystem. Does this mean that MS is abandoning the Project Astoria bridge/subsystem? Or is MS just not including it again until a later build of Windows 10 Mobile and if so, can anyone answer when they will put it back? I really think not having it will be a huge mistake as this is a huge advantage to close the 'App Gap' Windows phones have."

No one has answered those questions.

Posted by David Ramel on November 16, 2015