Home > Message Boards > Classical >
The top 6 reasons mobile apps crash: How to best avoid Murph Go to page 1, 2, 3  Next
This forum is locked you cannot post, reply to or edit topics   This topic is locked you cannot edit posts or make replies View previous topic :: View next topic
Author Message
masonwilliams



Joined: 12 Oct 2020
Posts: 1

PostPosted: Mon Oct 12, 2020 1:33 am   Post subject: The top 6 reasons mobile apps crash: How to best avoid Murph Reply with quote

People hate when apps crash, or even when they slow down or freeze for a few seconds. According to a survey by Dimensional Research, 61 percent of users expect mobile apps to start within four seconds, while 49 percent want responses to inputs in two seconds. If an app crashes, freezes, or has errors, 53 percent of users will uninstall it.

Whether your target audience is consumers or the enterprise crowd, disappointing them is the quick road to being frozen out. I spoke to a number of mobile developers and asked about the most common problems they've come across. Here are six of the top ways your development can go astray and leave your app in danger of heading off a performance cliff.

1. Memory management
One of the biggest problem areas according to virtually everyone I spoke to is memory management. An app might be spinning too many threads and soaking up memory resources or running on a system that has too many apps open. People write code as though only their apps exist, says Sachin Agarwal, VP Marketing at OpsClarity. Your software needs to be a "good citizen in the app ecosystem," he says. "I look at some news apps and they're looking at almost a gig of data. They're archiving news from the last month. There's a level of corporate citizenship that needs to come up on mobile apps."

Not that the problem is the same for all developers. "In iOS there are more things you can do to leverage Objective-C to handle a lot of the memory issues," says Andrew Whiting, vice president of business development at Solstice Mobile. But there is a trade-off. "On Android, you have much deeper [memory] control and you can usually make it do exactly what you want it to do, which adds complexity."

"You get into things [with Android] like [running] out of memory in Java, which typically we find correlated with things like loading big images or processing bitmaps," says Jonathan Karon, senior software engineering manager at New Relic, which distributes a mobile SDK that reports on technical performance and has compiled common causes of problems. "There are actually a surprising number of what look like linker issues on Android, where a class can't be found, or there's an exception called unclassified link." On the other hand, iOS apps often suffer from the NSInternalInconsistency exception, which happens when a developer changes an array or data collection in one place "while something else is reading through the list of things that are there."

2. Software lifecycle
The iterative app development process, with its constant series of frequent releases, opens doors for getting to market with a minimum viable product and then improving it over time, building an audience. But the loss of the traditional software lifecycle introduces significant complications because of dependencies on the operating system and third-party APIs.

"If you look at the latest Android updates, the apps crash a lot," Agarwal says. "The OS is unstable itself. Or the OS gets updated and the app hasn't been updated." Or the user doesn't download the new version. "You have no control and it speaks to a core development process."

The growth of mobile and cloud computing has increased the use of third-party services, and their associated APIs, that save time and help get an app to market more quickly. But they have their own set of issues.

"A lot of the libraries are the lowest common denominators," Whiting says. "They're trying to solve everyone's problems and not making an optimal solution for anyone." For example, a given API might have a performance limitation for a particular app.

The API may also use techniques that can be tricky, like iOS method swizzling. A developer changes mappings from a method name to an implementation, which allows modification of the original method when the original code, like an API from Apple, is unavailable. "You could call it one of the 'dark arts' of iOS app development," says Raman Bhatia, director of mobile at online travel agency Fareportal. "[But] if your app code is written a certain way, it can cause a crash."

APIs also can introduce unexpected modifications. "API latencies, error rates, data bandwidth, version of API used, and the number of API requests can lead to small issues that become big problems," says Agarwal. Then there is the chain of dependencies for the APIs themselves, that creates a need for specialized tools to track everything.

An API can also cause other problems, like memory errors. "You're pointing to an object you had already removed from memory, and that's not usually a problem if you created all the objects yourself because you know whether or not you can refer to it," says Long Le, cofounder and developer of We Get Fit, an upcoming Apple Watch and iPhone fitness app. "The problem happens when you bring in third-party frameworks. You're never sure what they're cleaning up and what they're creating."

3. Inadequate testing
The need for testing is obvious, but getting adequate coverage, particularly with the plethora of Android versions and devices, can be challenging. There are simulators, but software running on a server might not show the same performance limitations.

For example, one thread of an app might try to read a database at the same time a second thread is trying to modify the same database. "It's a timing problem," says Wayne Carter, chief architect of mobile at Couchbase. "If they don't hit at the exact moment in time, the issue doesn't surface. It can be covered up with something as simple as a log statement." A simulator often won't exhibit the same foundational performance limitations of a mobile device, so the race condition isn't apparent.

There are services that run pairings of different devices and variations of operating systems and make them available, but that would likely be more expensive than a simulator. The choice becomes a trade-off between budgets and needs.

Testing should be combined with benchmarking against industry standards and user expectations to be sure that what seems acceptable to developers is also acceptable to users. Testing should also occur on a continuous basis. Monitor performance and look for user feedback suggesting problems, and then fix things as soon as possible. shell shockers unblocked

4. Network management
As apps have increasingly come to depend on network access, either for data or for third-party services, network management has grown as a source of trouble.

"The most important reason [apps crash] is the responsiveness and your app hanging when you're trying to get some data, or you have submitted something and you're waiting for a response," says Pravin Vazirani, associate vice president of operations for Chetu, a software development consultancy. It could be that the developer had a good Wi-Fi connection, but the user is on a mobile network in an area with bad reception.

A change in networks, caused by going from 3G to 2G, going into and out of elevators, or losing reception is particularly tough and can result in lost or scrambled packets. Luckily, "a lot of these conditions can be [modeled] with a few scenarios," says Roi Carmel, senior vice president of products and strategy at mobile app testing company Perfecto Mobile.

One good way to handle a network problem is to inform the user of the connectivity break and to offer, when possible, the chance to do something else that might be of interest. If people understand the cause of what is a temporary condition beyond the control of the app, they're more likely to remain calm and not become annoyed at the software or the brand name associated with it.

5. Error condition and exception handling
Given the complications of mobile development, some errors are inevitable, whether it's an unexpected API change, a memory problem that avoided previous detection, or a network condition that ends connectivity or even just slows data speeds during the transmission of large files like images or video.

What stands between such a situation and a crash is good error and exception handling. This way, an app can't get thrown by an unexpected attempt to divide by zero, an incorrectly entered response from a user, an API that suddenly started providing text as a response instead of a numeric value, or the temporary loss of connectivity.

In any of these cases, a properly coded app will note the unexpected and have a graceful way to terminate a process or activity while informing the user of the error. It may not be ideal, but if you can keep the lines of communication open, there's a better chance you'll keep the user.

6. Too much code
But perhaps the best advice is to keep an app simple. Provide the single-purpose tool that people want and use the exercise to code only what is necessary. "The best and most bug-free code is the code that you don't write," says Felipe Laso-Marsetti, senior systems engineer with enterprise mobile development firm Lextech Global Services.

Can you realistically create a bug-free app, particularly on a first round? Probably not. However, you can focus on these trouble sources and do your best to create strong exception handling for the things that can and will go wrong. Murphy may wander the world of software development, but you can make sure he steps as lightly as possible.[/b]
_________________
(link hidden for guest post)
Back to top
View members profile Send private message
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Fri Apr 09, 2021 3:41 am   Post subject: pintor economico en zaragoza Reply with quote

A very excellent blog post. I am thankful for your blog post. I have found a lot of approaches after visiting your post. pintor economico en zaragoza
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Mon Apr 12, 2021 1:16 pm   Post subject: Reply with quote

Nice to be visiting your blog again, it has been months for me. Well this article that i've been waited for so long. I need this article to complete my assignment in the college, and it has same topic with your article. Thanks, great share. Viagra sklep
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Mon Apr 12, 2021 3:00 pm   Post subject: Reply with quote

Attractive, post. I just stumbled upon your weblog and wanted to say that I have liked browsing your blog posts. After all, I will surely subscribe to your feed, and I hope you will write again soon! Kamagra sklep
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Tue Apr 13, 2021 3:45 am   Post subject: Reply with quote

Great things you’ve always shared with us. Just keep writing this kind of posts.The time which was wasted in traveling for tuition now it can be used for studies.Thanks boutique
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Thu Apr 15, 2021 12:52 pm   Post subject: Reply with quote

I found your this post while searching for information about blog-related research ... It's a good post .. keep posting and updating information. steel casting company
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Sun Apr 18, 2021 3:22 am   Post subject: Reply with quote

This is a smart blog. I mean it. You have so much knowledge about this issue, and so much passion. You also know how to make people rally behind it, obviously from the responses. fashion
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Sun Apr 25, 2021 12:00 pm   Post subject: Reply with quote

It is an excellent blog, I have ever seen. I found all the material on this blog utmost unique and well written. And, I have decided to visit it again and again. how to become a credit card processor
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Sun Apr 25, 2021 2:22 pm   Post subject: Reply with quote

This is a smart blog. I mean it. You have so much knowledge about this issue, and so much passion. You also know how to make people rally behind it, obviously from the responses. merchant services sales
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Mon Apr 26, 2021 10:36 am   Post subject: Reply with quote

This is just the information I am finding everywhere. Thanks for your blog, I just subscribe your blog. This is a nice blog.. Become a digital payments agent
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Mon Apr 26, 2021 11:59 am   Post subject: Reply with quote

Excellent article. Very interesting to read. I really love to read such a nice article. Thanks! keep rocking. usa hair reviews
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Tue Apr 27, 2021 4:01 am   Post subject: Reply with quote

Took me time to read all the comments, but I really enjoyed the article. It proved to be Very helpful to me and I am sure to all the commenters here! It’s always nice when you can not only be informed, but also entertained! movieflix
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
Saint23
Regular


Joined: 14 Mar 2020
Posts: 209
Location: Karachi

PostPosted: Wed Apr 28, 2021 7:15 am   Post subject: Reply with quote

What a fantabulous post this has been. Never seen this kind of useful post. I am grateful to you and expect more number of posts like these. Thank you very much. North American Bancard Partners
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Thu Apr 29, 2021 3:42 am   Post subject: Reply with quote

I think this is an informative post and it is very useful and knowledgeable. therefore, I would like to thank you for the efforts you have made in writing this article. บาคาร่า
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
seomasster45
Regular


Joined: 08 Apr 2020
Posts: 298
Location: pakistan

PostPosted: Sat May 01, 2021 10:59 am   Post subject: Reply with quote

We have sell some products of different custom boxes.it is very useful and very low price please visits this site thanks and please share this post with your friends. white label payment processing
_________________
HI DEAR
Back to top
View members profile Send private message AIM Address Yahoo Messenger MSN Messenger
Display posts from previous:   
This forum is locked you cannot post, reply to or edit topics   This topic is locked you cannot edit posts or make replies View previous topic :: View next topic
Page 1 of 3 All times are GMT-8:00
Go to page 1, 2, 3  Next
You can post new topics
You can reply to topics
You cannot edit your posts
You cannot delete your posts
You can vote in polls