5 ms·
I think it would be great to have more competition in the smartphone marketplace. My concern as a developer is that with so many devices coming out can I be rea
by gcheong 17y ago
I think it would be great to have more competition in the smartphone marketplace. My concern as a developer is that with so many devices coming out can I be reasonably assured that any app I write for android will work on all devices as with the iPhone? I certainly cannot afford to buy 12 different phones. Sure, adroid is supposed to be the common OS but is it going to really work that way in practice?
- qeorge 17y agoYou raise a good point, and in order for this to work they'll need to ensure a full suite of emulators are available for testing. Android already provides an emulator [1] that can be configured to match the target device, although I can't speak to its quality as I have not used it. Windows Mobile is in a similar position, and its SDK provides emulators for every phone you would want to test on. Phones differ so much in form factor alone that you really need to be testing individually for any phone in your target market anyway. Its a huge time-sink to be sure, but you won't be flying blind. [1] http://developer.android.com/guide/developing/tools/emulator.html http://developer.android.com/guide/developing/tools/emulator...
- evgen 17y agoIts not just about being able to test (although I have serious doubts that any suite of emulators will be able to give anything more than a rough guess as to how an app will perform on a wide variety of potential platforms) but also about what features will be available, what APIs will work, and how much code you will have to write to deal with some funky condition on Vendor A's phone that makes it differ in some subtle way from Vendor B and C's phones. Eventually they will probably figure it out, but for the next year or so this game is going to make browser feature detection look like a walk in the park...
- shimi 17y agoFrom I seen so far unless you're playing with low level stuff the software is consistent across the devices. For now Android is far from the J2ME scenario, let's hope it will stay that way.
- dminor 17y agoThe emulator is quite configurable, so you can set up a profile for each set of hardware. Of course there are things like tilt sensors and accelerometers that just don't translate well.
- stcredzero 17y ago...can I be reasonably assured that any app I write for android will work on all devices as with the iPhone? That's one of the main points of Android. It's in Apple's DNA to really polish their software on a small number of hardware platforms. This might not be so much of an advantage when it comes to apps handling personal information. However, this advantage might be significant when it comes to games some of which have a tendency to push whatever hardware they are on.
- dejb 17y ago> However, this advantage might be significant when it comes to games some of which have a tendency to push whatever hardware they are on. This doesn't line up with the experience in desktop software where the the PC dominates gaming despite having a multitude of difference hardware environments.
- scythe 17y agoThis is in part because the manufacturers have adopted standards - be they patented, like x86 and directx, or open like opengl. Unfortunately, we don't see as much in terms of standards on phones. Android addresses this, though, since everything runs on dalvik. A JIT would be nice if we're going to see more resource-intensive stuff.
- jballanc 17y ago...and you've never run into a case where your particular hardware isn't capable of running latest great game XYZ? The point is that people don't think of their phones the same way they think of their computers. If I want to play Crysis, I'll go out and buy a new graphics card. If I've got 15 min standing in line at the store and my phone can't play your game, I'll go buy a different game.
- JunkDNA 17y agoThe detail you forget with gaming is that the basic PC hardware is more or less guaranteed to be there: mouse, keyboard, 3d graphics accelerator, monitor capable of a certain minimal resolution. In particular, the ergonomics are also consistent. The issue with phones is that ergonomics can make or break your app, and that is dictated entirely by fixed hardware. Do you have only a touch screen? A keyboard? keyboard + touch screen? What about physical screen size and resolution? Your application will technically run on every combination of that hardware, but the end-user experience may suffer. Those ergonomic issues impact the end-user in a huge way. If you've ever watched someone with a Blackberry (with a trackball) use an iphone optimized website, it's usable but not as efficient as using a touch screen. There's often no way around these limitations for the end-user other than getting a new device. Mobile devices will eventually mature and converge toward common hardware and input technologies, but until that happens cross-device work is going to be a real challenge.
- donaq 17y agoI think you can be as sure about that as you are sure that writing a desktop application for MS Windows will run on most machines running Windows regardless of the underlying hardware.
- dminor 17y agoThe main difference is screen sizes and densities -- their latest blog post talks about it in depth: http://android-developers.blogspot.com/ http://android-developers.blogspot.com/
- kaitnieks 17y agoI asked them about this in some unconference. They were very smug about it, they said that hardware developers will want to implement the whole thing as completely and as compliantly with other Android phones as possible and the message was "we don't care". I think Android development will become close to the nightmare that mobile games developers used (or still do?) to face.