Testing Android Application - android

How do I test my Android application such that it works on all major android phones ? e.g. Motorola, HTC, Samsung etc.
I have an app that works on Nexus One and Samsung but it is giving problems on HTC Incredible.

Well, it's probably because the Nexus One and Samsung don't use the Sense UI, so it sounds like it's an issue on devices running the Sense UI.
I would recommend getting a cheap htc phone running the Sense UI (wildfire, hero, etc.), and testing it on that.

Have you tried a remote test service like perfectomobile ? These services host real phones that you get remote access to for an hourly fee.
P.S. I'm sure there are others, and I'm not a shill. I have however used them successfully.
I think Motorola has a similar service as well.

If you actually have the devices nearby, it would be good to use automated testing, such as jUnit or Robotium on all of them. Especially Robotium seems like a good idea because technical bugs will show up in the Market anyway, but some buttons not showing due to different layouts on different devices will hardly not be reported at all.

Related

Android: How to I test for bugs on a device I don't have?

I just finished my first Android app. I tested it in the emulator and on my personal device (Nexus 6p). Other folks are installing it and it's working for them. My dad, however, also gave it a try. He has a Samsung Galaxy S6 running 6.0.1, and the app crashes on startup for him.
My guess is it's something touchwiz related. The thing is, he's not the most technical person, as far as getting a logcat would go. So... what are my options to try and investigate this issue?
Crashlytics can help you to retrieve the stack trace and exceptions when your app crashes.
But if you want to test and fix before the deploy, another options is Xamarin Test Cloud, it's a paid solution, but have a free-trial
[EDIT]
Searching in the internet, I found something similar to Xamarin Test Cloud, I personally have not tested this solution, but you can check it out.
TestMunk, they have a free plan.
This is an aspect of the extreme fragmentation of the Android ecosystem. I've seen bugs that manifest only on a specific device from a specific carrier. For example, at one point, Verizon broke ACTION_HEADSET_PLUG on one of their tablets, so that no app would ever receive it. It had worked fine on an earlier firmware version. Naturally, they refused to acknowledge the problem. The same tablet model from T-Mobile never exhibited this issue.
This is why I don't trust the emulator. It's fine for early testing, but you still need to test on the actual hardware that you intend to support. There are online services that test your app on a wide variety of real devices to try to uncover the weird vendor-specific issues. I've never used these services, so I can't recommend one.

Android Emulator vs Real Device [2013]

This is related to question Android Emulator vs Real Device
What is the current state of art of Android emulators and what are the differences that developers should be aware of. I'm working on an app that uses bluetooth and thinking of adding a feature related to phone calling. Since I can't afford to test on all real devices so what should be the guidelines for developer to test such apps on emulators ?
Genymotion rocks. According to the blog post of Cyril Mottier it is even much better then the hardware devices.
http://www.cyrilmottier.com/2013/06/27/a-productive-android-development-environment/
I test basically everything on several real devices. The only thing I use an emulator for is making sure layouts look good on the configurations I don't have available(I don't have a 7" tablet, for instance). This is only after just about everything else is done.
Functionality is going to be nearly the same on any real device, and the emulator is no guarantee, since it doesn't seem to act like any real device in some cases(openGL, for instance).
Testing usability on a desktop with a mouse just doesn't make sense, unless you're writing something that going to be using that input method. There's a big difference between swiping with a finger and click-dragging with a mouse.
Even if you have the fastest emulator/virtualizer in the world, how can it be any faster than just picking up the phone next to you?

testing android apps on real devices

I have a samsung s6102 and s9100 and some applications I'm working on. The problem is that I'll like to test my app on real devices and I was thinking we can do something togheter. anyone who has a question aboiut how his apps works on my devices, I'm open to test. also I'll like to know how my application acts on your devices.
Maybe this type of services is already available, but I didn't find it.
Any idea about how can I test my app on real devices, without buying them?
Samsung offers such a service.
However, there are quite a bit of limitations to that. Your best bet would be to either buy a few devices that cover the majority of features. I personally have 5 Android devices which cover various hardware specifications and screen densities. Additionally, if you have friends with Android devices, you could see if they are open to having you test your app on them. You could also hold private betas with other developers you might meet in chat rooms or on forums.
Also, if you do buy devices, make sure that you buy from more than one manufacturer, and that some devices are low end, some high end, some mid ranged, some big, some small. Also, I'd recommend buying at least one Nexus device.

Android ==> Application development?

I am an iphone application developer, all iphones have very similar Operating systems, and the size and everything is the same, so I don't need to create applications specific for each iphone.
But with android there are different phones, different sizes, So How can I possibly know that my app works, and looks fine on all these devices
I don't already own an android but I completed my first application using the simulator. Which android phone do u suggest for testing? I am an AT&T user and Iuse an iphone. Can I simply insert my sim-card in the new android to be able to test my app on the device?
The android virtual device lets you change the virtual hardware to match all of the current shipping phones. There are ways to receive device crash reports from a shipped application to help diagnose force closes or other grievous errors.
You need an unlocked phone to use another SIM card. The Nexus One is available unlocked out of the gate, and comes with an AT&T version. The only AT&T (as sold by AT&T) Android phone (Backflip) is stupidly crippled and should be avoided. You can also buy an Android Dev Phone, which is currently "middle of the pack" in terms of hardware. You can also easily find numerous other Android capable handsets - pick depending on your target market. Some phones are now old: for instance, the G1 is on its way out.
you won't need to worry about different screen size . take a look at Supporting Multiple Screen article . I'm not sure for the late ones because I'm also working with Android Emulator .
1 - Take a look at this Google IO session for load of tips on making your app work across devices. It's not that hard at all really
2 - I'd recommend the Nexus One if you need a phone just to develop on. It's representative of what you'll be seeing in devices in the coming years. If you want a current representative phone take a look at the HTC Legend (Mid-end) or the HTC Wildfire (Low-end). There's also the Droid and things like that but you can only get them on Verizon I think. I'm not too knowledgeable about availability in the US, I'm from the UK.

Android - writing apps for not-yet-released devices

I am looking to write an Android app for a device that has not been released to the market yet, and so I will not have the hardware to test upon. I have created an AVD (Android Virtual Device) with as much information as is currently available on the web, so assume that this is as like the device as is possible to get.
However, does anyone have any tips or ideas to make the process of developing for this platform as easy as possible? My current apps have been for personal use on my own phone, so can test performance on the hardware etc. which is obviously not possible in this case. Any gotchas to watch out for (apart from the possibility of the device never being released..!!)
Just follow the SDK.
AVD behaves similar to a real device. I really can't think of something it behaved different on a device and on the AVD.
The only device that brought me trouble is the HTC Hero, first phone with HTC Sense. It didn't follow the SDK and they were calls that weren't there. Newer phones with HTC sense doesn't have this issue, as far as I can tell.

Categories

Resources