A mobile application also called as a mobile app is a type of software application that is specifically developed for small handheld devices such as smartphones or tabs. Most of these mobile apps do not run on desktop computers and are developed only for mobile environment. While some apps like calendar, calculator, web browsers, email client etc are available to the mobile users as pre-installed software, other premium apps require purchase from the mobile app store. Mobile apps operate both online and offline based on their functionality. Online mobile apps require WiFi or internet connectivity to run the application whereas offline apps can run in the absence of internet connection to their devices.

Online Mobile Apps:

Online mobile apps are best when mobile users have WiFi internet connectivity to their mobile devices. Generally, it requires no download or software installation to use them on your devices. It can be directly accessed real-time through online activity. Online mobile apps may require some add-ons or extensions if applicable but any failure in network activity may affect the performance of the application. Popular examples of online mobile apps are mobile banking apps, games, email clients etc.

Advantages:

Online mobile apps can be downloaded to the mobile devices for repeated use. The app may pre-cache some of the static data such as drop-down menus or other reference information which can be used later while app is running.
Just like web based applications, online mobile apps also present updated information to the users as it connects to the back-end servers to get the real-time data. For instance, mobile bank apps almost work like real time web applications barring the user interface features. The data or the account details that you see on mobile app will be similar to the information available on the web based application.
Online mobile apps offer higher flexibility to the users than offline. It not only provides up-to-date information but simplifies most of the user transactions through online connectivity. For instance, now-a-days users are hardly going to their desktop computers to check their accounts or pay bills. By downloading the respective online apps on their mobiles, they are able to make their account transactions easy and simple.

Disadvantages:

One of the biggest drawback is, online apps often take more time than offline mobile apps because of the dependency on network for data transfers. It also depends on the number of users actively using the network connectivity. The higher the network users, the poorer will be the performance of online mobile app.
The mobile user experience and application performance is dependent on the type of network connectivity. If network speed is inconsistent, then the performance of the app will not be the same. In case, if user is unable to connect to the network, the app will not work on mobile devices.

Offline Mobile Apps

Offline mobile apps are best when mobile users have limited accessibility to wifi or network connectivity. These apps are often called as native apps because the reference data to run the app is stored locally on the device. Offline apps are gaining popularity now-a-days due to their consistency in operation even in the absence of network connectivity. That means, the functionality within the mobile app is available even when there is no connection to the back-end application. However, it may require download of all reference data during initialization and then later connects with the back-end to synchronize the updates.

Advantages:

Takes very little time to bring out the data as it is using the cached record sets. These apps are not functional to get the real time data from the database or back-end servers.
It provides continuous operation even when there is no network connectivity. Due to this reason, the data that you see is not up-to-date information as it is not coming from the back-end servers.
There will be less performance issues in offline mobile apps as it is not dependent on network connectivity.

Disadvantages:

Initialization of offline mobile app may take a several minutes, based on the amount of reference data required on the device.
The performance of the app depends on the storage capacity of the device. For extended operation or functionality, sometimes offline mobile apps may require network connectivity.
The data that you see is not real-time or updated. Offline mobile apps are recommended where it requires no dynamic features such as static content or games.