Edit: I suppose I should ask a more concrete question: would you pay for a service like this? If not, what would you use instead?
Edit: I suppose I should ask a more concrete question: would you pay for a service like this? If not, what would you use instead?
Doubtful it would work any better than the custom VM solution that Genymotion (mentioned in the article) does (for this specific pain-point).
I would still need to adb deploy my apk to the device (which is a process that really drags development even when doing it to local devices) and now its even worse because it is remote. Also this remoteness would add all sorts of new issues like that fact that if I'm developing a server in tandem with the client app, now I have to jump through hoops to make the server remotely accessible (so your service devices can see it) whereas otherwise I might just be running it locally in a non-publicly accessible way for development purposes (solvable problem, but still a lot of friction and this request for a simulator is all about removing such friction).
Android devices as a service is still a good idea for other things like testing & QA because while Android fragmentation isn't as bad as it used to be, you still do see device-specific bugs (or at least platform-specific, like TouchWiz bugs on Samsung devices that don't impact other versions of Android) quite often when developing and having access to specific devices would help in such situations, but I don't think it addresses any of the main problems that are driving this request for iOS-style simulation (which, FWIW, I totally agree with Jake Wharton on).
Somewhat unfortunately, I've found the connection fairly unstable, and they don't factory reset between uses (so unless you remove your APK, it'll stay on the device and configurations persist).
[1]: http://developer.samsung.com/remotetestlab/rtlDeviceList.act...
There are some kinds of sensors with variable quality that some developers claim leads to a need for testing every device. I would write code that characterizes performance instead, and possibly blacklist some known bad devices.
I've used it fairly extensively, it can be a bit buggy and slow, but it was instrumental in tracking down a bug just after launching an Android app.
People were leaving 1-star reviews, saying the app simply hard crashed at launch. We couldn't replicate the issue in any way on any of our ~10 physical devices we used for testing, or in any VM, but, with the service, we were able to isolate it exclusively to a handful of Android 2.3.3 devices with less than 512mb of memory. After that it was much easier to track down the source of the bug, fix it, and stem the flow of bad reviews.
Android is so fragmented among versions and devices that in the future I'd always want to use a service like this to at the very least make sure the app opens and runs across a slew of devices before launching.
[0] : http://www.keynote.com/solutions/testing/mobile-testing