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.
Related
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.
An app I published crashes on certain specific devices. I keep receiving messages from the users that just "can't open" the app. This of course lowers the rating on Google Play.
On Android Vitals there's no reference of these crashes, all crashes I receive are managed and happen after the app start, but if I filter for device model or Android version looking for those that tell me that the app didn't open, I find absolutely NOTHING.
I installed crashlytics, and I was astonished by the fact that I received completely different error communications, so Android Vitals seems just partial?
And anyway, still NOTHING about early crashes.
I tried to install the app on the official Samsung online emulator for some devices that are suspected to crash, and still... guess... NOTHING. So I can't even test it and I'm completely helpless.
How can I do to stop this bad app behaviour, that reduces the number of my happy users? I need a really reliable way to detect ALL crashes.
thank you.
Use a Crash Reporting Tool such as Firebase Crash Reporting. Everyone professional uses such tool
https://firebase.google.com/docs/crash/
As already mentioned, you can use a crash reporting tool/framework, additionally you should be aware, that offline crashed might not get reported and if the user doesn't allow you to use the internet, there is no way around that, as far as I'm aware.
In the meantime you could try excluding the devices that you suspect to produce crashed while you are trying to fix it (if you care about the rating).
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.
My application has been published for a while. I have never received any crash reports through Google play developer page. Then I integrated Flurry to see how the audience is behaving. On Flurry dashboard I saw that my application occasionally crashes. The crashes are irregular and produce very different stack traces. I cannot understand why the crashes appear and I cannot reproduce them on my devices and emulators - application just works perfectly. My problem is that it is difficult to fix something that really works for you :)
Flurry dashboard shows that the crash ratio is 1-2% of the sessions - not that big. So I was thinking just to accept that. But the crashes still bother me in the back of my head. I want your advice - should I accept this small crash ratio or really investigate the crashes? What crash ratios do you have for your applications ?
As for me, it's been impossible to get zero crashes for any app, so my suggestion is learning to live with it :)
You cannot test your app in all devices and android versions, and even if you would, there may be installed applications conflicting with yours. Imagine for instance you create an app that needs to use the camera, but there's another app installed that doesn't properly release the camera resources; that will surely mess with your app, and there's no much you can do to predict nor change it.
So, just make sure you test your app in as much devices as you can (low, mid and high range), focusing in the most popular devices/android versions (I guess Flurry reports which devices are your app installed in)
I have recently published my second app on the Android Market. I've gotten a few e-mails about the app crashing on open, and all users were using the Motorola Backflip. It seems to work fine on all other devices. The app shows the background image, but crashes right after that.
Is there something different I have to do when coding for that device?
The strange thing is that it is very similar to my first app, which seems to work just fine for them. The major difference is that my second app is a paid app, and uses Android Licence Verification. My implementation should catch any license errors though, and I've tested this on my device.
Users have uninstalled and reinstalled the app without success. I'm stumped.
The other thing they're reporting is that the icon doesn't even show properly, but rather is a gear in a box, which makes me think that something goes awry very early in the installation process.
The solution was to have a user install aLogcat on their phone to send me the log.
It had to do with onCreateDialog. I was returning several dialogs, but one of them actually called .show(), which it's not supposed to do, of course. The thing is that this didn't cause an error on any phones except for the Backflip. The emulators also didn't error, or even warn me about it.
I have a motorola backflip and i can say that is not a good product....it's crashing for a lot of things....don't worry, your app is not wrong, the phone is wrong...