When to go offline compatible?
When designing an application, it is important to consider the areas in which is will be used, for example a busy city or remote location. At Atom Engine we consider offline compatibility just as important in both of these cases. In this article we will explain the various reasons why.
1.Better user experience
If we take an example of a shopping app where a user has found and selected a product to view. The data is downloaded and after a short period of loading a pretty product detail page is shown. We would always recommend creating a cache of this product page meaning that when the product is viewed again the product detail page is shown instantly. We would also store the time this record had been cached and use that to know when a refresh from the server is required.
As you can see this approach would slowly build up a local store of data resulting in much quicker browsing as well as allowing the user to browse previous items without the need for a data connection.
For companies using mobile apps, the last thing they want is their staff sitting watching a loading message or running around the room trying to grab an inch of signal. By replicating the online data structure on the phone, mobile apps are able to take ‘snapshots’ when they are in good coverage areas. They can then update the snapshot of the database on site whilst being completely offline and re-sync on completion. Over the years we have developed complex conflict management data systems to cater for such synchronisations.
Network connections are particularly heavy on battery usage. Good offline compatible apps store information and reduce network connections where possible. High battery usage is a major concern for users, those apps with a constant high battery usage are much more likely to be deleted.
Offline datasets can be searched almost instantly. A large dataset sent all at once is much more efficient on network usage compared to downloading each record on demand. A large proportion of each network connection is actually made up of establishing and closing it. By using clever machine learning techniques of what a user is likely to want to see developers can download relevant data in one API call resulting in lightening fast offline searches. These searches can be backed up with a background network search if results are not present. This sort of offline first approach is our preference as it results in quick, as well as up to date results.
Offline storage methods
If you would like to talk to us more about offline compatibility, or you have a project in mind, please get in touch.
You may also like:
We’ve developed some new tools that are free to use to help you to create barcodes, QR codes and iOS app store iconography. Try them for yourself today.
A tutorial showing how to create a simple app with a collection view that will display recent headlines from a News API, this tutorial assumes you know very little about iOS development.
A prototype is an initial version of your potential final product. Learn why they are important and whether it should be used in your next project.
Developers programming for iOS currently have two choices for creating an App, Objective C and Swift. While Swift is seen as the 'offspring' of Obj C there are many differences. Learn about them here.
With over 5 million apps online today, more than a good idea is needed to create an app that people will want to use. We discuss a few things to consider before launching your next project.
Here we look at reasons how you could possibly save your business some money as well as improve customer engagement.
Learn the differences between the two most popular methodologies in development today and the benefits of each. See if you have any preference on which you'd rather use on your next project.
Are you undecided on whether your company needs social media? Read on and we will try to convince you as to why it's essential.
See how analytics are just as important within mobile apps as your website.
Native vs Cross Platform App Development. Read ahead and decide which you think would be most beneficial for your business
Find our how a great user interface can lead to happy customers and better user retainment
What is machine learning and how can it be used to improved your mobile application.
How in-house mobile apps can give your business an efficiency boost.