Android app crashing on different devices - android

I am building an app for a client, its about 90% done and he wanted to test it out along with a few of his friends. One of his friends came up with an issue were the app is crashing on his device but it works on everyone else's devices. Now I have four personal android devices I try my apps on and am not facing the problem on any of them. It's remote work so I can't get his device to figure out what's going on. How do people handle apps behaving differently on other devices and how can this be avoided.

Related

App doesn’t work properly on Samsung devices

I created an app and it’s live in Google Play. I constantly test it to eliminate bugs and crashes. The app is almost crash-free. But sometimes I receive bad reviews from my users (only Samsung devices users) (1-2% of Samsung devices). They say that the app opens but displays a screen with app title and gets stuck on it (I don’t even have such screen in my app).
I am not receiving any crash reports or ANR reports about something that can be related to this issue. I tested on all Samsung devices I could find (friends, relatives, hired people on Upwork) but everything just works fine.
Is there anything that can cause this issue?
Maybe somewhere in your code does not work on those devices or there is an exception you caught but forgot to log it.
Try analyzing your logs and use some services like Microsoft Appcenter to find out which part of your app does not work properly.

Android app behaves differently between developer's device and tester's device

I've got an Android app which works perfectly on all the devices I've tested on, by installing via Android Studio or downloading to the app from Crashlytics (Twitter's beta distribution product among other things).
Unfortunately when the client installs the app (via Crashlytics) it doesn't work correctly for them (relating to bluetooth connection functionality).
Does anyone know of any differences that could result from this situation? Are the devices I've tested on somehow setup differently to the tester's device because mine have been used in a dev environment..?
Well got both the clients devices in and they worked first time for me so I'm not sure what was going on, they seemed to be doing everything right but I've got nothing more to go on at this point!

Strategies for debugging across devices

I'm having trouble with an app I published that sends user notifications.
The notifications are called from a background service that checks for a boolean that gets saved to SharedPreferences when the user selects to enable notifications or not.
However, I've had some users on the Galaxy S5s say that they can't turn them off (I test with nexus devs and have beta testers on m8, etc). How do I address this issue?
What is the strategy for solving problems that arise only for specific devices?
IMO, Android kinda sucks in that regard. There is absolutely no way to guarantee that if one piece of code that works on one device works on another one. Since Android is open source, manufacturers usually modify the firmware to make it kinda customized. However, they sometimes change things that will affect performance of a single function.
It is even worse! Your code might work on S4 with Android JellyBean, but not work with the same device Android Kitkat. Anyways, no - there is no way to debug without the actual device. However, you can log different events in your code and use an analytic service (like Google Analytics) and send the data to your database to study and figure out the problem. This is the method that I typically use in such cases.
If the problem is that the app crashes on some device. It is even easier. Users need to press on the "send crash data" button - so you can study the log on your developer account.

Developing an Android phone app -- can I use an Android tablet to test it on?

I've developed a couple of Enterprise iOS apps for our users in the field. Some have expressed a preference for Android devices over Apple, and I fully understand. I do not have an Android phone, nor do I want to get one and have a second account to maintain. I'm wondering if I can use an inexpensive Android tablet to reliably test an application that will ultimately be running on an Android phone? The app will need to communicate via internet to a server via cell connection or wifi.
Also, any advice for an Android newbie developer would be appreciated.
Yes you could test on a Android tablet but it would be hard to see how it render on a phone.
You could also use the Android Emulator to test different size and android configuration.
Yes. I developed my first major Android app using only a couple of cheap tablet devices. It's fine; the only thing you can't really test is "what happens to my app when a phone call comes in." Plus if you can get the emulator working under HAXM, or some other similar setup where it doesn't work like a tortoise trapped in amber, you can test on a variety of simulated devices perfectly well.
Other things to consider:
You'll probably want to test your app on a variety of different hardware and Android versions, in particular I'd recommend testing on older devices. This means that you friends' old Android phones are a great source of cheap test devices. I regularly gather phones from friends that would otherwise just end up lingering in the back of a drawer as a "spare" that will never actually get used. Bear in mind that you can use all the features of a phone apart from the actual phone bit without a SIM, including a WiFi-based data connection.
You may find that you can find good, contract-free "pay as you go" phone SIMs. I use a provider whose "credits" don't expire, so I have a phone connection for my test devices where there's no ongoing cost, apart from the actual calls I make when testing.

Is it possible that smartphones may react differently on the same application?

I have a concern about an application (Android) that I realized whose I don't understand where does the problem.
Basically the application (Android) uses almost everywhere data received from an external BD exchange is from a Web Service (Php).
When I test on my smartphone (Nexus 5 - v 4.4.4), I don't encountered a bug. But when run on two Sony Xperia (v 4.4.2), purchased together, one encounters little bug but the other is all the time it crashes.
I'm a little disappointed, I can not say where it the problem is, if it's my code that is not well managed.
My question is: Is it possible that different smartphones can behave differently on the same application? And if so, how should we handle this?
I'm sorry, my english is not very well. I hope you have understood what I wrote.
This is possible.
One reason is the different API version
and some different implementations from the device manufactors
some problem I remember are the different root certificates, so if you're using a secured webservice, this might cause the problem. (an ex. for different root CA is 'Baltimore Cybertrust' it's not installed on each device.)

Categories

Resources