I've the default (comes with the SDK) and Samsung Galaxy Tab emulators in my SDK. I want to know what other third party (Motorola, LG, Sharp, etc) emulators are available, so that I can test my apps for more devices. Please provide the names with links.
I found this link a while back. It goes pretty in-depth on how to set up the sizing and capabilities for many devices. These are just alternative AVDs that run in the default emulator, though, and it might not be exactly what you're looking for.
http://mobile.tutsplus.com/tutorials/android/common-android-virtual-device-configurations/
The Motorola SDK addons (i.e. emulator images) are all available on the MOTODEV site (http://developer.motorola.com/docstools/tools/). You will need to register an account, but you can download images for all the shipping phones. If you join the App Accelerator Program, you get early access to addons for unreleased products.
Use Genymotion. Its fast (faster than with Intel x86) with GPS and Battery support and comes with pre-rooted.
Related
I am about to port my application on android. Since I am new to this system I would like to ask for tips on android phones for testing my app. The number of phones is pretty huge so it is pretty hard to choose the right one. Also I wasn't able to find some kind of official chart of system distribution.
I know that it really depends on hardware and how much my app demands from hardware. It is pretty basic app and I am able to run this app at 30fps on iPhone 4S.
I did some research and people are talking about the latest phones but I think that it is not necessary to buy the newest one. Also, is there option to buy for example tablet and emulate android devices on this tablet?
So my goal is to focus on devices people have the most.
Thank you for any advice.
You can run many of your tests on the Android emulator. Using it together
with the DDMS will allow you to simulate several real life situations
(arriving call, arriving sms, change position...)
You can use BlueStacks which is an emulator put on steroids.
TestFairy and UTest are awsome communities for crowd testing were you can test ~any device you can think of.
Still, it is a good idea, especially if you plan your run at Android to be long,
to maintain a small stash of real devices.
Which devices should you buy? Which OS version should they run?
The Android dashboard is the official source for answering some of these questions. It gives an
up to date statistics of worldwide distribution by OS version, svreen size/density and more:
OS Distribution
Screen type Distribution
So, true to July 2014 you would want devices running Jelly Bean, Gingerbread & ICS and you screens of types normal/hdpi, normal/xxhdpi and normal/xhdpi. This list can grow but even this will provide you with a good sample of the Android device ecosystem.
As for manufacturers, the picture is clear: Samsung is the winner. Exact number &
distributions are harder to find here, but a Google search might help.
If my memory serves me write some 65% of all Android devices are Samsungs made with
Galaxy S3 taking 15% (of ENTIRE Android market) and Galaxy S4 = 10%.
Device screen features:
Galaxy S2 is normal/hdpi
Galaxy S3 is normal/xhdpi
Galaxy S4/S5 is normal/xxhdpi
These will probably be your best bet. You will do smartly to install on them 2-3 different OS versions, at
minimum Jelly Bean and ICS.
The Android Development Tools in Eclipse and Android Studio both have emulators that can be used to emulate different devices, including tablets and phones. You don't need to buy anything to be able to test your app on an emulator. The emulators run on your computer.
For more information
As for what devices most people have, while I don't have official statistics, looking at my own applications' downloads, most people are using either a Nexus 4 or Nexus 5.
Do I need to install an emulator of some sort? Are there any online services that offer this? I've found little guidance elsewhere on this matter. I'm on Windows 8, just trying to figure out (locally) why my android users are experiencing issues with an MVC app.
The easiest way would be to download and install the Android SDK and use the emulator to try and reproduce the problem. The SDK has emulator images for all versions of Android, and you can create devices with different screens (resolution/dpi/size), so if your site uses responsive design you can test also how it scales across different devices and whether the problem affects one specific or all Android devices.
However, it is possible that the emulator might not be good enough for reproducing and understanding the problem. The Android SDK images come with the browser that is part of the Android Open Source Project (AOSP). While this browser is technically based on WebKit, it is based on a rather old version of it. Most OEMs that have built Android devices have signed the Google Mobile Services (GMS) license ship on their devices the Google suite of apps which includes the latest version of Chrome, which is based on the most recent WebKit version. The difference in the behavior between the two browsers is rather big.
So if the problem turns out to be with Chrome instead of the AOSP Browser, you will have to buy a real device and test on it. Depending on the budget you have and whether you want a phone or a tablet, you can go with a Nexus 5 ($350 w/o contract), Nexus 7 ($230 wifi only), or a Moto G ($175 w/o contract). Of course, you could also buy Samsung Galaxy S4, HTC One X, or a Moto X, but they all will cost you more.
It might be worth also borrowing from someone a Samsung Galaxy Ace 2, or equivalent low end MDPI device.
well, you can install an android emulator and use the browser there (http://developer.android.com/tools/devices/index.html), but it's extremely slow,
so you should, instead, try Genymotion. It's an android virtual machine and it's pretty smooth. (http://www.genymotion.com/)
another option, is the Opera mobile emulator, but that is specifically for the mobile Opera browser. (http://www.opera.com/developer/mobile-emulator)
if you want a chrome specific approach, try this (https://developers.google.com/chrome-developer-tools/docs/mobile-emulation)
http://developer.android.com/sdk/index.html has the emulators.
… but it may be just as cost-effective to just spring the $40 for a cheap Android tablet with WiFi.
I need to test web apps on a representative selection of Android phones and tablets. I don't have the budget necessary to purchase a large selection of physical devices. I'm looking for a collection of AVD files to use with the Android SDK emulator to accomplish this. Does anyone know of an existing repository or collection of these? Or do I have to make each one individually figuring out their specific resolutions, memory, Android versions, etc for each? I've created one based on the Nexus S definition provided in the SDK's AVD Manager, but I need Samsung, HTC, etc ones too and am not sure where to get them. Each phone manufacturers dev portal is a little different and I haven't found anything as straight forward as "Here's the link to our AVDs" on them. Thanks.
If you aren't required to use the AVD from the SDK, you should checkout genymotion. They use a dedicated virtual machine to emulate real devices, so it's really really fast. They've also custom made a bunch of real devices (phones and tablets) such as the Nexus 4, Galaxy S4, HTC One, and Xperia Z. It looks like they mostly support API 16+, but there's a preview for API 9 at the time of writing this.
Yes, there is this one, thanks to https://github.com/j5at and other guys:
https://github.com/j5at/AndroidAVDRepo
Or do I have to make each one individually figuring out their specific resolutions, memory, Android versions, etc for each?
You will need to define whatever emulator images you want yourself. The norm is to define some emulators with a mix of resolutions and OS levels, not necessarily specifically trying to hit any particular device model.
Bear in mind that there are plenty of virtual test services that you are welcome to take advantage of as well. You should already be familiar with these, as they are commonly used in Web development for testing browser/OS combinations that you do not have at your disposal.
Each phone manufacturers dev portal is a little different and I haven't found anything as straight forward as "Here's the link to our AVDs" on them.
There are no dedicated emulator images for the vast majority of Android devices on the market.
as it states in the title I am unable to find Samsung Galaxy option for installation in Android SDK Manager (Revision 20.0.3).
Could anyone help on the matter?
PS: Where ever I looked it is said that there should be third party option or should be under Android 2.3 but it isn't there.
Thanks for helping.
You can (and will probably have to) create an emulator image with the specifications of the device you are trying to duplicate. If you are looking for prebuilt ones you'll have to check with the respective manufacturer. If you are expected to see TouchWiz or HTC Sense on the emulator build, you won't as those are proprietary skins.
But, Android != Android and Samsung use their own modified webkit amongst other things.
Just making a best guess from the hardware specs is going to as effective as using chrome.
My boss recently gave me an HTC Wildfire phone for doing an Android version of one of our mobile apps, which is all fine and good, except that the app requires API level 8 (ie Android 2.2), and the phone itself only has Android 2.1 installed. After much googling, I discovered that this phone does support Android 2.2, and carriers will be rolling out updates over the air for this model phone "in the near future".
Since I'm not entirely certain what our lazy carrier's definition of "near future" is, it would be nice if I could download images for particular releases and install them on my phone. Coming from the world of the iPhone, it seems that this should be something rather necessary in order to successfully develop an Android app.
Yet, it doesn't seem that Google offers any Android OS updates themselves. Have I no choice but to wait for the carrier to release an update?
Edit: Thanks for the suggestions regarding the emulator, but I'm asking about testing on hardware only. I already have a working 2.2 emulator image, but I need to test on hardware now, since the emulator does a very poor job of things like video playback and audio processing.
There's a few ways you can test your application on Android 2.2:
1) You can use the Emulator provided by Google in the SDK. It is possible to create a virtual machine of any version of Android with various hardware options. However, the emulator does have some limitations such as not supporting certain hardware options (such as bluetooth) and it's also dreadfully slow to boot.
2) If you have to use an actual phone with 2.2, you can root your phone and flash a custom ROM. I'm not particularly familiar with how to root the Wildfire, or what custom ROMs are available for that specific phone, but Cyanogen Mod has pretty good ROM support for HTC phones, as well as an active forum with tutorials.
No, it's not possible to download images before OTA. You could check CyanogemMod from time to time - they're working on Wildfire support. Also you could use an emulator.
If you are wanting to bounce around with newer versions, I recommend the Nexus One as a dev phone if you can get your hands on one. Or, if you can deal with the constraints, start with a built-in AVD emulator with API 8 until your phone gets the OTA update.
The Motorola Droid is also getting/has 2.2 on it. At least in the States, in seems that most of the phones on Verizon already have it (non-scientific, just from talking to people I know). So if that phone is available, it may be a decent choice.