Which phone to develop for?

Put your problem here if it does not fit any of the other categories.

Which phone to develop for?

Postby spentakapps » Sat Jan 08, 2011 3:44 am

I've got some books on the way in the mail, but in the mean time I am wondering which device I should purchase that will allow me to develop for the most phones. Also, when developing an app, how do you choose which OS version to develop for? How do you make sure your application runs on even older phones short of owning EVERY android device?

I'm trying to figure this out so I can invest in the right phone (or tablet). If I bought a tablet would my app have to be built for tablets only, or would it work on a phone?

Thanks.
spentakapps
Freshman
Freshman
 
Posts: 8
Joined: Sat Jan 08, 2011 3:41 am

Top

Re: Which phone to develop for?

Postby Skiller » Sat Jan 08, 2011 11:09 am

The emulator included in the SDK can emulate most versions of android, chances are if it runs in the emulator on a version of android it'll probably be fine on most phones running the same version, so you don't really need to get every phone out there. That said you should always try to run on a real device before releasing as emulators rarely operate exactly as a real device does.

As far as what to target, if you want to maximize your sales android 1.6 is probably the best versions to aim for, it'll cover something like 90% of android devices if I remember correctly, 2.0 is something like 60%, and 2.2 is something like 20%. Google probably have proper stats on that available somewhere.

Since apps are mostly written in an interpreted language (Java) there shouldn't be any real compatibility issues between the android devices except maybe with the input methods available on the device, so it's not quite as big a deal to have the exact right devices as on other platforms. However if you are really serious about making a high quality app for the largest market it can help help having a minimum spec device to run on so you can get a good understanding of the performance of the app on the min spec devices and tune it accordingly. Of course it's a pain to debug on slow devices so it can also really help development time to get the most powerful device as you'll be able to run in debug mode without the pain of worse than worst case performance.
Skiller
Developer
Developer
 
Posts: 33
Joined: Sun Nov 28, 2010 8:35 pm
Location: Australia

Re: Which phone to develop for?

Postby jonbonazza » Sun Jan 09, 2011 5:21 am

As far as what to target, if you want to maximize your sales android 1.6 is probably the best versions to aim for, it'll cover something like 90% of android devices if I remember correctly, 2.0 is something like 60%, and 2.2 is something like 20%. Google probably have proper stats on that available somewhere.

Umm... did you even add those numbers up before posting them?
Actually, most android handsets are now running 2.1+ although they don't have that much of a lead over 1.6. Furthermore, if something is developed for 1.6, that does NOT necessarily mean it will run on 2.1+ as alot of things changed in the SDK in between those versions. Your best bet is to get a 2.1 or 2.2 phone and develop your apps for 1.6. If they work on the 2.1 and 2.2 phone, they will work for 1.6.
jonbonazza
Master Developer
Master Developer
 
Posts: 665
Joined: Thu Jul 15, 2010 2:58 pm
Location: WV USA

Re: Which phone to develop for?

Postby Skiller » Sun Jan 09, 2011 9:13 am

jonbonazza wrote:Umm... did you even add those numbers up before posting them?
Actually, most android handsets are now running 2.1+ although they don't have that much of a lead over 1.6. Furthermore, if something is developed for 1.6, that does NOT necessarily mean it will run on 2.1+ as alot of things changed in the SDK in between those versions. Your best bet is to get a 2.1 or 2.2 phone and develop your apps for 1.6. If they work on the 2.1 and 2.2 phone, they will work for 1.6.


The stats I gave are basically what I remember from the Google I/O 2010 which was in may last year which is why I suggested there might be proper stats to look for as they'd be more up to date and far more accurate. And as far as the numbers not adding up it was my understanding that a properly made 1.6 app should run on future versions on future versions of android, so they aren't wrong (at least at the time the vid was made), it was 90% for 1.6 because even though only about 30% of the phones at the time were 1.6 it runs on the 2.0-2.2 devices which makes up the other 60% (actually it might have been saying 2.1 not 2.2 on the vid now that I think about it).
Skiller
Developer
Developer
 
Posts: 33
Joined: Sun Nov 28, 2010 8:35 pm
Location: Australia

Re: Which phone to develop for?

Postby jonbonazza » Sun Jan 09, 2011 8:40 pm

I see. Well, there are some misunderstandings in your post. Just to keep the OP on track, let me clarify:

1) If an app is developed for 1.6 it DOES NOT mean it will run on future devices. In fact, it's the opposite. The SDK used to make apps for android, as well as the android source itself changes with every new version. This means that certain classes and/or methods are deprecated and/or reworked. When these changes happen, it "breaks" compatibility. The only way around this is to develop the app for the lowest SDK version possible, but test it on a device running the target OS(s). Since, the majority of devices are running 2.1+ (2.1 is a small update to 2.0 and still considered Eclair, thus 2.0 is no longer supported and no longer offered in devices. There are currently no devices running 2.0 as they have ALL been updated to 2.1), your best bet--provided you cannot afford to buy devices for all target OS versions--is to pick 2.1. With that said, compatibility between 1.6 and 2.1 is near perfect, so you will likely not experience much issues. 2.2 is where a lot of issues arose and most apps needed refactored to support 2.2 (get rid of deprecated methods and uses work arounds to work for all target OS versions). Because of this, if you plan to target 2.2, I would suggest use a 2.2 device as a debug phone.

2) As I touched on above, 2.0 is no longer a supported version. In fact, the 2.0 SDK is not even offered as a download anymore. 2.1 was an incremental update to 2.0 and both are considered Eclair. As of currently, there is not a single subsidized device (there may be some out there made by small, no-name companies, not sure) running 2.0. The few that even received an update to 2.0 were quickly updated to 2.1.
jonbonazza
Master Developer
Master Developer
 
Posts: 665
Joined: Thu Jul 15, 2010 2:58 pm
Location: WV USA

Re: Which phone to develop for?

Postby Skiller » Sun Jan 09, 2011 11:53 pm

jonbonazza wrote:If an app is developed for 1.6 it DOES NOT mean it will run on future devices.


I wasn't aware of that at all, from the vid I watched I was almost positive that it was the opposite. I'm going to have to keep an eye out for any probs in my own app as I was thinking of switching to target 1.6 instead of the 2.0 I started with.

jonbonazza wrote:As I touched on above, 2.0 is no longer a supported version. In fact, the 2.0 SDK is not even offered as a download anymore.


And that would explain why I had problems when I tried to set up development on my laptop, I had set 2.0 as my target platform on my desktop but when I went to set up my laptop I couldn't get any of the 2.0 SDK stuff so I had to set it to 2.1.

Thanks for the info and clarifications :)
Skiller
Developer
Developer
 
Posts: 33
Joined: Sun Nov 28, 2010 8:35 pm
Location: Australia

Top

Re: Which phone to develop for?

Postby jonbonazza » Mon Jan 10, 2011 3:27 pm

Np =), yea I wasn't aware of the first point for the longest time either. It wasn't until I noticed that many developers were adding "Froyo support" and "Gingerbread support" to their "Recently Changed" section, and upon further investigation realized this was so.
jonbonazza
Master Developer
Master Developer
 
Posts: 665
Joined: Thu Jul 15, 2010 2:58 pm
Location: WV USA

Top

Return to Other Coding-Problems

Who is online

Users browsing this forum: No registered users and 22 guests