Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
I'm in the market for a basic Android device. My main reason for buying one is for learning to develop mobile apps. While the Eclipse IDE offers a virtual Android device for testing apps, it's not the same thing as a real Android device and won't put me on the same wavelength as Android device users. (The most obvious example: Visibility is poorer in a bright outdoor environment than indoors.)
Some questions:
Is a tablet PC the type of device I should get? I get the impression that it's more versatile than other devices. I don't need a smartphone, because my dumbphone works well for me, and I don't even use it that much. And I HATE the idea of being locked into a specific wireless provider. I'm not interested in ebooks, because I still like books on paper better.
Should I get a device with Android 2.3 or 4.0? On the one hand, over 90% of current Android users are using version 2.3.3 or earlier. On the other hand, 4.0 is better and will be gaining market share. (Would buying an Android 2.3 device now and buying an Android 4.0 device later be my best bet?)
In addition to wifi, what else should I look for?
Are there any brands/models I should avoid? I remember hearing that the Packard Bell PCs were the most unreliable. The Yugo was a terrible value. (An old Oldsmobile Cutlass clunker was a better value - at least as reliable but MUCH cheaper to buy.)
Is there any point in buying used? The listings on Ebay and Google Shopping don't show the used tablet PCs to be that much cheaper than new ones, and there are more new tablets than used ones available.
Ebay listings currently (5-23-2012) show over 200 Android 2.3 tablets selling for $55-$90:
http://www.ebay.com/sch/iPads-Tablets-eBook-Readers-/171485/i.html?Operating%2520System=Android%25202%252E3%252Ex%2520Gingerbread&LH_BIN=1&Internet%2520Connectivity=Wi%252DFi%7CWi%252DFi%2520%252B%25203G%7CWi%252DFi%2520%252B%25204G&_nkw=android+2.3&_dmpt=US_Tablets&rt=nc&LH_ItemCondition=1000
Ebay listings currently (5-23-2012) show over 200 Android 4.0 tablets selling for $83-$107:
http://www.ebay.com/sch/iPads-Tablets-eBook-Readers-/171485/i.html?Operating%2520System=Android%25204%252Ex%2520Ice%2520Cream%2520Sandwich&LH_BIN=1&LH_ItemCondition=1000&Type=Tablet&_pppn=r1&_dmpt=US_Tablets&Internet%2520Connectivity=Wi%252DFi%7CWi%252DFi%2520%252B%25203G%7CWi%252DFi%2520%252B%25204G
What do you think?
This question is probably off topic.
But here are my thoughts:
If you want to develop the truth is you should try to have access (be it ownership or just access) to any devices that you intend to support with your applications. This is certainly not possible for everyone, but there are ways that you can maximize your value while building a device collection by aiming to hit the largest swath of different types of devices.
You have no obligation to be locked into a contract (or even any service) for a telephone. If you go to a carrier store you can purchase a device at full price and leave the store without activating any service on it (In general, subject to change at the whim of whatever store you are in =) If you intend to by a phone for full price expect the range of prices to be $380-$600. From what I can tell about your situation I would think that a phone is best route for you to start off with. In addition to being able to buy from a carrier, Google also from time to time directly sells a "Nexus" device which is released with stock(ish) android OS (no skins etc..) The current device in this line is the Galaxy Nexus which is being sold directly through the (former) Android Market That is a good choice because it is more or less the latest generation of hardware, and the newest OS (these Nexus devices tend to receive their OS updates in a more timely manner than carrier tied devices). In fact the first Nexus device was marketed heavily toward developers, this line of phones was meant to be used for development.
Is a tablet PC the type of device I should get?
If you intend to create applications for tablets then yes. If you intend to develop phone applications you should really be testing on a phone.
Should I get a device with Android 2.3 or 4.0?
Ideally both on different devices. If you must pick one, then it depends on your budget 4.0 is only on the newest devices right now so they are likely going to be more expensive than some of the devices you can find with 2.3. (although $399 for the Galaxy Nexus might be hard to beat in price, even for some of the 2.3 devices for sale)
In addition to wifi, what else should I look for?
On phones that can be readily purchased in the US your choices are basically boiled down to only a few things. Screen Size (anywhere from tiny to pretty damn big for a phone), HardwareKeyboard(in a few different shapes and sizes), Camera (if you care about it). In general most of the other features are fairly standard (i.e. bluetooth, gps, accelerometer, etc..) The other thing to consider would be "Oomph", despite being called phones what people are carrying around today are small computers. They have CPU, GPU and RAM just the same as PCs. Battery life is the last major divisor, there is a fairly wide range of battery life expectancy (hint, massive screen and multiple cores need lots of battery). However since you don't seem to want to use this device as your phone some of this stuff may not matter as much to you.
Are there any brands/models I should avoid?
Anything in the list of your first ebay link. In general (in the US) the major phone manufactures are: HTC, Motorola, Sony, LG, Samsung. There are many other devices out there that are nice as well. But these guys are generally the ones consistently pumping out the most used phones. Idealy you should aim for a spread of device's made by different manufacturers. The custom skins and addons they like to use in their versions of the OS tend to like extra testing. Having one of each will help you help the largest chunk of your users.
Is there any point in buying used?
There are good deals to be had on nice but slightly dated phones. If you don't know what you are looking at I'd stay away though, it could be easy to get ripped off.
Well it does not seem like you need a very expensive device. Guess you could buy Google's and Samsung's old Nexus S which is not the newest around but still has android 4 because it's Google's "offcial" or something. And since it rolled out with 2.3, you should be able to download the old version somewhere and flash it. That phone should be cheaper, especially second-hand.
I mean since there are so many devices with different screen sizes and all you can't really find one that will reveal what other device-users will think of your apps.
Carrier options should be a non-issue for development. You can buy any Android phone for any
carrier including unlocked, and that should not affect your development flexibility.
Get the lowest version you can have. 2.3 and 2.2 have the most market shares right now. There is no reason to get 4.0, unless you are developing specifically for Android OS 4.0 and above (meaning that you actually use API that only exist on 4.0 and above and not lower).
Your development platform also affects what phone model to use. If you use Windows, get a phone that comes with Windows drivers. It'd be a bummer to buy one only to find out that Windows can't detect it. Mac and Linux do not need drivers, as they are both UNIX based.
You should get a phone. If you don't want to use it you don't have to... but most likely the majority of your users will be on a device. If you want a device that is always up to date and is great for testing I recommend the Galaxy Nexus.
Since most Android phone users are not on the most up to date os version, I prefer testing on a phone with 2.3
If you temporarily need a phone to test your app, Sony Mobile developer program has a phone loaner program in US and Canada where you can borrow a device for up to 30 days.
http://developer.sonymobile.com/wportal/devworld/phones/borrow-a-phone
/Magnus E
Sony Mobile
Related
I am an experienced Apple developer who is looking to develop for Android. I do not currently own any Android devices, so I am considering purchasing a B&N Nook HD for development purposes, which now runs Android. From the research I've done, it seems that the spectrum of Android devices is quite varied and disorganized compared to the Apple world (no offense intended). So, my question is, even though there are better (more expensive, too) devices to purchase (Nexus tablets), will a Nook HD suffice for beginning Android development? By the way, my intentions are to develop mostly tablet utilities with emphasis on networking and data manipulation. I'm not really interested in hardware-specific areas like graphics and sensory input (with the exception of the touchscreen, of course). Thank you for your advice.
In a general sense, yes. Your device will do just fine. However, a caveat is that you must take into consideration the flavor of android you are planning to target. e.g. Working on a Froyo flavor won't necessary guarantee it will run on the latest Jellybean and so on.
Hell, I started developing android almost 2 years ago (but stopped indefinitely) but it was only this year that I took it upon myself to get a PHYSICAL android device when I continued to develop my app. For no particular reason I just dropped by the local gadget mall and randomly picked the Samsung Tab 3. Yes, reviews are bad and it kernel panics a lot but these are trivial things for my specific use.
The one major problem I had? Dealing with REAL input from REAL data on a REAL device. My app worked sufficiently fine on the emulator. When it ran on the Tab it was breaking everywhere!
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I'm going to be writing my Android app soon, and thinking about buying a solid android device to develop on and play with. My question is for you guys, assuming you wanted to develop and test your app on an Adroid device, what would you recommend?
Samsung Galaxy looks promising, but I know choosing a good dev phone is one of those things you definitely need to choose wisely on. The Android device landscape seems to be broadening every day, so it'd be good to hear about the latest devices for developing. Perhaps I could just get a cheap clunker and it won't make a difference?
I'm sort of a nerd, so if the device is pricey, but has some cool features that others don't, then I'd still consider it. However, I don't want to waste too much money on features that I may not need (or that may distract me ;)), like HD video, although it looks like a lot of phones have HD support anyways.
Tablets seem a bit much, but I'm still open to it... if you're loving your Android tablet for developing, let me know about it. I could see some benefits like being sure my app will run on Android tablets and different resolutions.
Any caveats I should be worried about? I have a buddy who was developing Android when it first came out and I remember him complaining that he could never update his device, since the updates were always restricted for some reason. Is that still the case?
If you can speak to any of these points, I'd be happy to hear them.
Also concerned about using the location based stuff, like gps, will I need a contract?
I'll be developing on my Macbook Air OSX, if you have any additional input as far as devices go, and using a Mac, that would be great too. Thanks!
You should develop against the Android 4 platform, but during the course of development, you will figure out which APIs you are using. The level of APIs you are using determines which minimal OS you will support. There's 2 manifest settings in play here: target API (15 aka ICS), and minimal API (depends on what you use).
To get a good mix of API support and broad coverage in the consumer market (using the dashboard that #Basic pointed to), I tend to point people at API level 8, which is Android 2.2 (aka Froyo). You'll hit roughly 93% of people out there and you'll get the APIs you need for most development. If you know you need newer APIs, by all means use them. The world will catch up, it may just take some time.
I typically point people to get a Nexus phone or XOOM tablet. You need the reference design so you can stay on top of the official releases from Google as quickly as they come out. The AOSP builds are important to follow, but they aren't the only game in town. After that, if you want to be serious about it, you should pick up one phone each from the major OEMs so you can deal with the differences in the customized platforms (Sense, Blur, Touchwiz, etc.)
Disclaimer: I work for Motorola. MOTODEV Studio is my teams' product (thanks Basic!)
Samsung Galaxy Nexus, Good because it is a phone that is supported directly from Google.
Samsung Galaxy S2, it just has all the features you need
One of those two for spec heavy phones, but you also need a cheaper not so good phone so you can get both ends of the device range, so get something like a IDEOS as well.
All you need to remember is that there is never going to be just one type of device being used, there are hundreds, if you have a phone thats close to the bottom and your app works almost as well as a phone as the top it will be good, because you will be able to catch the whole range of customers.
Also for location based things all you need to do is put permissions in the android manifest and it should be good, users are notified about these when they download the application
Mac can be good for development, its supported by Android as well so I dont think you will have a problem, when I went to the Android devs lab it seemed to be that all the Google guys had macs anyway
It depends what you want to support. There's a whole spectrum from the HTC Wildfire up to Galaxy S2 / HTC One.
What versions of Android are you going to target? Some people are still on 1.5!
Regarding updates: Google releases updates at their own speed. The problem is that before that update reaches a given device, the carrier usually customises it to include branding, mandatory aspps, etc... Which can take an indeterminate length of time or may not happen at all. This was one huge benefit of the Nexus One - it wasn't branded so updates were available as soon as they were released.
Regarding Development: eclipse is available for almost every platform and is a great starting place. MOTODev Studio is based on eclipse and is excellent as it comes with templates, pre-configured emulators, etc...
Location Services: Android uses 3 approaches to get your location: GPS (Works poorly indoors, can be slow to get a fix, quite a battery hog), Wifi (Google have mapped the location of a lot of wifi networks - thus if it can see a known wifi network, it knows roughly where it is) and finally network (It knows the location of the cell tower(s) your phone is talking to).
None of the above needs a contract but Wifi requires an internet connection (to perform the lookup) and Network obviously requires your phone to be in range of and allowed to talk to a cell tower - which usually just means getting a sim for a network which covers your area.
Note that when getting location on the device, you can opt to have coarse of fine-grained location information. Coarse doesn't fire up the GPS (They also require different permissions)
See this page for more info about location
Personally, I would recommend the Toshiba Thrive 10.1 Inch Android Tablet.
It has:
1 GHz Nvidia Tegra
1 GB RAM
Full Size USB Port
Full Size SD Card Slot
Full Size HDMI Port
Mini USB Port
Can be upgraded from Android 3.1 to 3.2 or 4.0
And it usually only costs about $200-250 depending on how much memory you want.
You think to yourself: what this question has to do with programming? Let me explain.
I had a SE K770i and tried to write a software on it that records sound and sends it to the server. And it occurred that the development framework on this phone limits and makes it hard to send big chunks of data.
So now i use older phone. But would like to start write some kicking bad-asses software for some new technology. So i figured out i ask you guys what is the most programmer-friendly hi-tech phone right now that is cheap and popular.
What the phone needs to have:
good software development documentation
must be cheap
must have recording, touch screen, video and sending data via internet support
must have nice access to all this resources from source code
must be popular
And it should NOT be Apple, because i can't effort 200 dollars a year to write some apps and don't like the whole verification think.
What hi-tech, cheap phone is a right way for a mobile developer these days?
As HW goes, perhaps this one which is a cheep android phone which received a lot of positive acclaim http://en.wikipedia.org/wiki/ZTE_Blade.
Given the recent developments with symbian and Nokia, I think it might be a decent bet to develop for the Android platform. Given the features you list, either the Google Nexus or any of the Samsung Galaxy series phones would be a good fit. On the android developer website though, google lists the Nexus as the device that one should test all apps on, especially since (IMO, I could be wrong) it is closest to Android-and-nothing-else. Other phones, such as Samsung etc., have Android but also some other APIs on them.
Update: Since you mention a price <= $500, I would suggest the Google Nexus S or a Samsung Galaxy Pop/Fit etc. That would fit nicely in with your price range.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm planning to port a couple of games from iPhone/Windows Mobile to the Android platform. The games are written in C++ so I plan to use the NDK with a thin java wrapper.
I'm new to the Android platform and need some advice on which phone to buy for development. I suspect like Windows Mobile there is a level of fragmentation with different phones supporting different features (keyboard/ rotation/ screen size/ capacitive touch screen/ etc).
What are the best device(s) for development on the Android platform...?
They also have to be available in the UK/Europe.
Thank you in advance.
Nikos.
If you want to support all versions of the OS I'd recommend a Hero, because this has the oldest OS version in the wild (1.5) which can be problematic. It is also hugely popular.
The two slowest devices that are out there in any significant numbers are the G1 and the Tattoo, but they are both on 1.6 which complicates matters.
If you want to support the state-of-the-art and aren't so bothered about a large install base, go for the N1 (2.1) or Droid/Milestone (2.0).
According to me, if you want to develop an application for android and you want to test it on the device i means real device then the best option is Android Dev Phone 2. You get more detail information about that phone from the following link.
This phone is specially for the developers. It provide all the required features and also the services.
Even I am using the same for testing the application I am developing.
Androi Developer Phone 2
Also this device model is not too costly in compare to other latest device models. You can get this device with Android OS v1.5 and later version.
I think the Android Developer Phone 1 is still the best for development, if you install Android 1.5 on it. 1.5 still has a large enough user base that it's important to develop for them if you want to make any sort of splash in the Market (usage statistics). Also, it's one of the oldest Android devices with the least power both in terms of CPU and RAM, so you know if your app runs well on the ADP1 it'll run well on just about any other Android phone.
I currently develop on a HTC Hero (or G2 Touch as T-Mobile have dubbed it). It unfortunately does not feature a hardware keyboard, but is a powerful little phone. With custom firmwares about rooting one of these phones is a piece of cake (see http://forum.xda-developers.com/forumdisplay.php?f=512)
In the UK we are still stuck with the 1.5 O/S - so bare this in mind when developing for the Android. We have been promised the newer 2.1 O/S later this year.
My opinion may not be the best, as this is infact my first Android device, but I have found developing on it pretty much pain free.
Good luck!
The emulators available with the SDK are actually quite good. That said it's always best to test things on real phones. I think the two main things you'll have to deal with in terms of device fragmentation are screen sizes and processor speeds. As far as I know nearly all devices have capacitive screens and support rotation, so those aren't issues.
In terms of speed, the two main things are the 'old generation' phones with approx 500MHz processors such as the Hero, G1, etc and then the new generation with 1GHz processors like the Nexus One.
Screen sizes, again you've got 320x480 on most older phones, and either 480x800 or 480x854 on newer phones. Android has an easy system for handling different screens densities and sizes within the same application, so the issue is more "How good does it look?" when dealing with graphics. There unfortunately, you may just have to either rely on the emulator for the size you don't have, or get access to a second phone somehow.
Edit: I didn't actually recommend a phone. I'd vote for the Hero or G1 now as well, simply because they're the older phones with smaller screens and slower processors. If your game is compatible with them, it's likely to be compatible with most other devices. (Yes, screens even smaller than the 320x480 exist, e.g. notably the 240x320 on the Tattoo, but I don't think they're very common.)
You want to test on as many devices as possible. Last year, someone asked this question to the Android team, and they said "You'll need big pockets, but we have about 5 or 6 phones each to test our apps on".
The Nexus S is the current Google recommended dev phone, but is only sold at Best Buy. These phones are able to have their bootloader unlocked and allow you to put custom roms, upload your own OS etc.
My suggestion is to get all types of phones. Top of the line, and even the HTC Hero which runs Android 1.5 so you can target all markets.
I've noticed some strange things occur on my Sensation due to the HTC Sense UI. Certain controls were not being displayed. Getting different manufacturer's phones with their custom UI's might also be a good idea.
What are the best device(s) for development on the Android platform...?
Pick up any with 2.1 onboard and you will be fine. Android is only starting to get momentum right about this time, so the user base to come will largely possess >= 2.1 OS.
As for the best, it doesn't exist. Customers are waiting through years for a perfect device and never find it. In fact, that is what is powering the industry, a quest for the best device. It doesn't exist.
This needs update regularly since there are a lot of new models coming out frequently. One thing that needs to be added are Android based tablets and very common now are the Samsung Galaxy Tabs.
The netflix android app developers have explained their method of testing which you can read about here: http://techblog.netflix.com/2012/03/testing-netflix-on-android.html
By my opinion your development phone should have option "USB debug".
A lot of low cost phones does not have this option :(
When your app will be relised in statistics you will see your downloaders phones models.
So best developers phone for you is popular phone of your users :)
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I've been intrigued by all the android world since I first learned about it and would like to get my hands dirty developing for it. The question that comes to mind is if it's worth buying the unlocked phones that Android sells directly or not.
Those phones (link) quoting the Android page:
Run and debug your Android™
applications directly on a device.
Modify and rebuild the Android
operating system, and flash it onto a
phone. The Android Dev Phone 1 is
carrier independent, and available for
purchase by any developer registered
with Android Market™.
Please note that this device is
intended for development purposes, and
may not include certain features found
on consumer Android devices.
So will it be worth it to purchase one of those as a tool for app testing as opposed to developing and testing just on Eclipse or one of the other IDEs and emulators.
-Have you tried it, do you own one?
I'm assuming they have the same specs as the HTC Dream and the HTC Magic, since they look exactly the same although they have a 'developers edition' custom black design not that I really care about the design for this particular item.
All comments are welcomed,
Thanks in advance.
Update:
I'll leave it open until tomorrow to see if there are any more answers, then I'll just pick the most voted since it's really a subjective question with no good or bad answer.
It depends what sort of applications you wish to develop. I find that the emulators very accurately reflect how things work on genuine devices; you can seamlessly connect to either an emulator or a dev phone using the command line tools, the Eclipse tools, the debugger etc.
Also, while you can flash your dev phone to a new OS version, HTC often lag behind (e.g. there's still no 2.0 image available) and it's much easier and faster to just use the emulators. The emulators also allow you to create and test with different screen resolutions, whereas the two dev phones available are only "standard" resolution.
I find it's quite rare that I need to use my ADP1 dev phone for development -- my rooted consumer HTC Hero works fine for most of the development I do.. allowing me to pull files from the device etc. Though the only reason I use my Hero rather than an emulator is because I've been working on an app that uses audio recording functionality.
However, where having a physical device would help is where you need to do specific stuff regarding the camera, audio hardware, orientation and compass sensors, GPS, wireless network access and so on. Should you need to connect a debugger to work on hardware-related issues like the above, then you would definitely need a dev phone.
Overall, it's definitely worth buying an Android phone for testing and demonstration purposes, but whether it's a development phone is up to your requirements.
If you plan on developing apps that you intend to put on the Android marketplace, it's absolutely critical to test on real hardware. You can get away with developing on the emulator for quite a while, but at some point, you'll want to use a real device.
That being said, you can use any android phone for development. There are some restrictions on locked devices, but if you're simply developing against the SDK, any phone will work. With android, you can install an apk directly on the phone without special permissions, so the only real advantage to a dev phone is that you can install new roms without having to root the phone.
Personally, I'd hold off on purchasing one of the older dev phones. From what I understand, they only support up to SDK 1.6, whereas the Droid and some of the other new phones are supporting SDK 2.0 ++.
Wait for the release of the Nexus One from G. The latest rumors are that it'll be released on Jan 5th. So it's just a week or so.
I think that you need a real android device whether it's the dev phone or another handset but a real phone is primordial. The emulator is great but you can't get an idea about the execution speed of your app until you use it on a real phone.
As said before there are a lot of rumors about the nexus one so wait and see!
As for which phone to buy (assuming you're going to get one) I think ablerman is right. I'd wait until January to see if there is going to be some new hardware available.
With regards to the more general question of should you buy one, I think it depends on what you're doing. For the most part, the emulators are fine. They can emulate GPS (you can even load KML to simulate a path), SMS, phone calls, etc. They cannot however emulate acclerometer/compass/orientation sensor data and actually will crash (actually I believe it hangs...) if you try to run code that relies on it. Also, it's difficult to actually debug phone-call related functionality without the dev phone.
They're good phones, I've used the Dev phone 1 (the G1/Dream) and it's nice. It also is a bit faster than the emulators and if you're writing something like a game, it would be really good to test it on the actual hardware.
All in all, it just depends on what you're writing. They're definitely fun to play with regardless as you can do pretty much ANYTHING you want on them.
Good luck with the decision!
I've been developing with the emulator since June. I've found it to be a very near substitute for the real deal, and it's easier to switch between handset configurations/versions. However, not knowing how quickly my apps will run is a concern for me.
The reason I've personally held off buying a handset is that 2009 was the wrong year to buy one. I have a feeling 2010 will very much be the long-awaited "Year of the Android".
+1 to Christopher and I will add - the emulators are great but having a physical phone will give you instant access to the Android Market to verify publishing, statistics and user comments. I also believe using your own app on a physical phone will help you to develop a better app. You do not need a development phone - but at least one physical phone - absolutly.
FYI. Belgium is one of the few countries where it is possible to buy any mobile unlocked. Indeed, the Belgian regulators forbid the forced bundling.
One more Pros for buying a real developer phone :
HierarchyViewer does not work on user builds (i.e. with devices
available in stores.) This is for security reasons.
See the original thread
Hierarchy viewer can be very useful if you have problems with layout being slow, although I don't think it would worth buying a real Developer phone only for this.
As some people made workaround for that problem : https://stackoverflow.com/a/7801475/62921.